概述
如果您還記得以前的Raspberry Pi教程,我們已經看到如何使用RASPBERRY PI控制直流電機以及如何使用RASPBERRY PI控制伺服電機。
步進電機可以分為伺服電機和直流電機,因為您可以控制角度位置軸以及沿任一方向自由旋轉軸。
我已經討論了步進電機,步進電機的類型電動機,步進電動機的內部結構以及如何設計步進電動機在使用ARDUINO 項目的步進電機控制中進行滾動循環。
因此,我建議您在繼續使用Raspberry Pi步進電機之前參考該項目一次接口。
驅動步進電機
識別步進器非常重要電動機,即它是單極步進電動機還是雙極步進電動機。因為,這些電動機的驅動技術是不同的。
在這個項目中,我將使用一個簡單的12V雙極步進電機。為了驅動這個步進電機,我們需要一個電機驅動模塊,如L293D或L298N。這兩個模塊都適用于12V步進電機。因此,選擇驅動程序模塊取決于您。對于這個項目,我選擇了L298N電機驅動器模塊。
步進電機優于伺服電機的主要優點是電機軸完全旋轉分為幾步并且您可以通過小心地給電機線圈通電來精確定位步進電機。
即使沒有像伺服電機那樣的反饋機制,步進電機的步進角也會更小提供非常精確的角度定位。
通常,幾乎所有市售的步進電機都具有1.8 0 的步進角。因此,對于完整的360 0 度旋轉,其步數將為200.
為了提高步進電機的精度即為了實現軸的更精確的角度定位,您可以使用稱為“半步進”的技術。
半步進是一種技術,我們將使用一相和兩相激勵的組合,而不是一次激勵單相。使用這種技術,您可以實現更小的400步分辨率和更平穩的操作。
Raspberry Pi步進電機接口
幾乎所有先進的數控機床和工業貼片機器人都使用步進電機。另一方面,Raspberry Pi是一臺小型計算機,可用于機器人,家庭自動化,工業自動化等眾多應用中。
因此,連接使用Raspberry Pi的步進電機將非常有趣,因為您可以在上述所有應用中實現此接口。
12V雙極步進電機可吸收約350mA至500mA的電流。因此,我們在使用Raspberry Pi步進電機接口時需要一個專用的驅動電路。
由于我使用的是雙極步進電機,我只需要四根控制線。這可以通過許多不同的模塊或驅動程序(如L293D,ULN2003或L298N)來完成。
如果是單極步進電機,有多種方法可以連接它到驅動程序模塊。通常,單極步進電機將具有5或6根電線。因此,您需要使用ULN2003或將其連接到雙極步進電機。
電路圖
下圖顯示了使用L298N的Raspberry Pi步進電機控制的連接圖。它使用Fritzing Application實現。
所需組件
Raspberry Pi 3 B型
12V雙極步進電機
L298N電機驅動器模塊
12V電機電源
Raspberry Pi的電源
連接電線
計算機
電機驅動器模塊的輸入,即IN1,IN2,IN3和IN4連接到物理引腳11,12,13和15,即Raspberry Pi的GPIO17,GPIO18,GPIO27和GPIO22 。
一組電機線圈連接到電機驅動器的OUT1和OUT2,另一組連接到OUT3和OUT4。
為電機驅動器模塊提供12V外部電源,L298N電機驅動器模塊和Raspberry Pi的接地端子是通用的。
為Raspberry Pi提供單獨的5V電源。
代碼
項目的編程部分是使用Python實現的。下面給出了使用Raspberry Pi和L298N電機驅動器模塊控制步進電機的Python腳本。
項目工作
這個簡單項目的目的只是為了理解如何使用Raspberry Pi和L298N連接步進電機。該項目的工作非常簡單,并在此處進行說明。
最初,您需要通過提供一些隨機值來校準步進電機,以便鎖定步驟。這里,正值(例如30)將使步進電機順時針旋轉,負值(如-30)將使其沿逆時針方向旋轉。
初始校準后,您可以輸入任何值,步進電機將移動到該位置。由于我們正在實施半步進技術,因此總步數為400.因此,如果輸入100,則步進電機將以順時針方向旋轉90 0 。
同樣,通過輸入其他值(正數或負數),您可以準確控制步進電機的位置。
應用程序
使用Raspberry Pi控制步進電機將使我們能夠在各種項目和應用中使用此接口,例如:
機器人
CNC繪圖儀
3D打印
家庭自動化
工業自動化
-
步進電機
+關注
關注
151文章
3115瀏覽量
147648 -
電機驅動器
+關注
關注
16文章
646瀏覽量
64749 -
L298N
+關注
關注
21文章
224瀏覽量
78727 -
樹莓派
+關注
關注
117文章
1710瀏覽量
105751
發布評論請先 登錄
相關推薦
評論