關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 基于XC2267M的儀表盤步進電機控制

        基于XC2267M的儀表盤步進電機控制

        作者: 時間:2010-03-02 來源:網絡 收藏
        5中斷函數詳解
        首先判斷指針是否需要轉動,如果是,表明上次轉動尚未完成,直接跳出中斷,等待下一次中斷。如果判定結果為不要轉動,繼續判斷上一步是正向還是反向運動。

        本文引用地址:http://www.104case.com/article/163231.htm

        圖3 中斷函數流程圖


        若判定結果為正向,則繼續進行下一步判斷:目標位置和當前位置是否一致。結果為反向則進入反向運動中斷處理模塊,流程結果類似。


        判斷轉動一步標志位是否為1。若為1,依據當前位置從PWM數組里賦新值給PWM寄存器,行動一步,當前位置前進一步(若為反向則退后一步)并清零轉動一步標志位。這樣下次進入中斷時,若轉動一步標志位沒有在主循環里重新賦值為1,就不會再次轉動。


        每次進入中斷,當Move_time不為0時,Move_time減1,直至減為0為止。

        實驗結果
        經過巴特沃斯二階低通濾波后,兩相電壓波形都為比較平滑的正弦波,波形相位差為120°,與理論的細分波形相吻合。


        步進電機從位置A移動到位置B的過程中,先加速(如果AB距離足夠大,步進電機將加速到最大轉速后勻速運行)。在接近位置B時,步進電機將減速,最后停止在位置B。從上圖可以看出,加速階段正選的波長逐漸變窄,減速時則逐漸變寬。

        圖4 步進電機勻速運轉兩相電壓圖

        圖5 步進電機加速狀態單相電壓示意圖

        圖6 步進電機減速狀態單相電壓示意圖

        結論
        利用單片機可方便的對步進電機的速度和位置進行,可靠地實現各種步進電機的操作,完成各種復雜工作。這里提出的步進電機分步方法,依靠Infineon最新的單片機CC2模塊強大的16個PWM輸出通道,同時驅動4個步進電機,成功通過軟件編程代替驅動芯片實現步進電機的細分,運行結果穩定可靠,并節省了外部設備,降低了成本。


        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 九江县| 天柱县| 武义县| 辉南县| 富顺县| 泸西县| 黑水县| 锦州市| 噶尔县| 正镶白旗| 东丽区| 冕宁县| 温泉县| 平邑县| 永州市| 白银市| 临安市| 高安市| 南乐县| 怀远县| 庆云县| 祁门县| 孝义市| 清原| 灵台县| 银川市| 罗田县| 磐石市| 青铜峡市| 孝昌县| 定州市| 韶关市| 大连市| 大理市| 泰和县| 乡城县| 故城县| 永德县| 阿拉善盟| 陆丰市| 灵石县|