CNC步進(jìn)電機(jī)控制6 -運(yùn)動公式
由于FPGA運(yùn)動單元只接受加速度和時間數(shù)字,因此PC的工作是計算它們。 由于我們的運(yùn)動單元具有非常簡單的架構(gòu)和可預(yù)測性,這很容易做到。
本文引用地址:http://cafeforensic.com/article/202401/454915.htm一點(diǎn)點(diǎn)數(shù)學(xué)
我們可以隨時計算軸的位置和速度,只需知道加速度即可。
讓我們?yōu)橐粋€軸提供以下四個變量:
p 是位置
s 是速度
a 是加速度
t 是時間
我們還有增量變量:
Δ p 是增量位置(例如,如果位置 p 從 10 移動到 15,則 Δp 為 5)
Δs 是增量速度
Δa 是 delta 加速度
Δt 是增量時間
請注意,這是針對一個軸的。每個軸都是獨(dú)立的,需要他自己的一組變量。
運(yùn)動公式(離散時間)
第一個公式描述了軸在怠速開始時的行為方式,加速度為 1。
還記得硬件加速集成商頁面中的表格嗎?經(jīng)過 5 個時鐘,加速度為 1,表顯示位置增加了 15。
公式為:
對于 Δt=5(5 個時鐘),公式表示位置增加 (5x6)/2=15。好。
請注意,如果加速度大于 1,則結(jié)果是成正比的。因此,如果加速度為 10,則位置增加 150。
第二個公式描述了系統(tǒng)在恒定速度(無加速度)下的行為方式。
例如,如果 Δt=5(5 個時鐘)且速度為 2,則位置增加 5x2=10。 當(dāng)加速度為空時,速度保持不變。
第三個公式描述了速度如何受到加速度的影響。
例如,如果 Δt=5(5 個時鐘)且加速度為 4,則速度增加 5x4=20。
總之,這里有兩個公式描述了給定加速度的位置和速度。
例如,如果當(dāng)前位置為 200,速度為 10,加速度為 2,并且經(jīng)過了 5 個時鐘,我們現(xiàn)在處于位置 280,速度為 20。
運(yùn)動公式(連續(xù)時間)
前面的公式適用于離散時間,即在FPGA中,一切都發(fā)生在時鐘信號上(即使時鐘非???,也不像現(xiàn)實(shí)世界中那樣連續(xù))。
在現(xiàn)實(shí)世界中,時間是連續(xù)的。 然后一個公式略有不同(缺少 +1)。
為什么缺少 +1 可能令人費(fèi)解。 一個線索是,由于時間是連續(xù)的,所以它是無限精確的,對于無限個數(shù),加上一個有限的數(shù)是微不足道的。
單位
如果我們使用公制,我們可能有以下單位:
變量 | 單位 |
---|---|
p(位置) | mm(毫米) |
s(速度) | mm/s(毫米每秒) |
a(加速度) | mm/s2(毫米/秒/秒) |
t(時間) | s(秒) |
在FPGA中,由于我們使用具有大量位的小數(shù)和高速計算,因此單位要小得多。例如,如果電機(jī)步進(jìn)移動軸 0.01mm,位置寄存器的位 44 移動步進(jìn)器,則位置表示精度為 0.01/(2^44) = 5.7e-16mm(比原子小得多)。
評論