Michael Cornn
2014-04-23 19:04:52 UTC
使用Arduino和L293D IC,我可以控制直流電動機的轉數嗎?還是只能控制電動機的方向和速度?
我購買了兩輪機器人平台來學習Arduino編程和電子技術。平台在這裡: http://www.robotshop.com/en/dfrobot-2wd-mobile-platform-arduino.html
每個車輪均由直流電動機控制。我按照Adafruit的教程( https://learn.adafruit.com/adafruit-arduino-lesson-15-dc-motor-reversing)借助L293D IC來控制電機。 p>
現在我意識到我無法直接控制電動機的旋轉。我可以控制旋轉的方向,電壓和時間。例如:以50%的電壓向前旋轉500毫秒。
但這很難轉化為實際的輪換。電動機的速度根據電壓(例如,如果我從2AA電池切換為4AA電池)和重量(添加傳感器使電動機減速)而變化。每次更改電壓或重量時,我都必須猜測一次旋轉會產生多少電壓/時間。
我認為我應該只購買步進電機。在此之前,我會問社區:有沒有辦法通過旋轉而不是時間來控制直流電動機?
除了旋轉編碼器以外?
我不明白如何將旋轉編碼器連接到直流電動機。我看到旋轉編碼器上有一個旋鈕,三個引腳告訴Arduino旋鈕旋轉了多少度。但是,您如何將該旋鈕與直流電動機(或電動機轉動的輪子)綁在一起?
帶齒輪,皮帶或鏈條。
或軸聯軸器,儘管這可能需要更精確的對準。步進電機通常不用於移動機器人,因為它們非常笨重,而且功率消耗巨大。根據您的分辨率需求,您還可以製作自己的光學或磁性編碼器,尤其是當您可以在輪輞附近工作時。正交系統將為您提供4倍的元素分辨率,因此,如果您的工作直徑可以通過兩個間隔開的傳感器支持8或16個物理元素,則可以得到不錯的運動分辨率(32或64個計數/轉)。見robotics.stackechange.com
謝謝你的建議。這樣的問題是否更適合robotics.stackexchange.com?
或者使用帶有內置(齒輪和)編碼器的電動機。