基于ATmega128編碼器控制步進(jìn)電機(jī)的平衡系統(tǒng)
提起編碼器,可能大家并不陌生,因?yàn)檫@東西真的很常用,現(xiàn)在的主流編碼器一般精度都是比較高的,基本上都是基于光柵的。畢竟用硬件用電刷做到512精度以上是很困難的,而且成本也是很高的,這里我就不多說什么了。
編碼器一般共有三個(gè)主通道,每個(gè)主通道有分為兩個(gè)分支;一個(gè)VCC,一個(gè)GND,一條屏蔽線。前兩個(gè)通道一般是比較精確的脈沖信號(hào),且之間有四分之一左右的相位差用來判斷正反轉(zhuǎn)的,第三通道基本上是旋轉(zhuǎn)一周才會(huì)有一個(gè)脈沖信號(hào)的那種。
提到步進(jìn)電機(jī),就一定要有一個(gè)合適的電機(jī)驅(qū)動(dòng),個(gè)人是比較喜歡用L298n這款芯片的,因?yàn)樗鼉r(jià)格低,操作比較簡單。
對(duì)于這個(gè)系統(tǒng),我是用128的外部中斷的下降沿觸發(fā)方式來捕捉編碼器的脈沖的,硬件連接方面電機(jī)驅(qū)動(dòng)和主控芯片一定要注意地線的連接。
下面是程序的完整代碼下載地址: http://www.51hei.com/f/bmma.rar
評(píng)論