本發(fā)明涉及電機,尤其涉及基于霍爾傳感器和觸發(fā)器的電機及其控制方法。
背景技術:
1、在電機實際使用中,由于電機內部沒有位置感知功能,因此一般情況下會在機械結構里設置霍爾傳感器,來感知電機的運動位置。例如在汽車車燈使用中,車燈控制器就涉及對多種功能電機的霍爾傳感器控制,其電機包括但不限于als電機、光型電機、afs電機等。現(xiàn)有技術對于電機的控制電路及相應方法,相對復雜。由于電機控制要求高實時、高可靠,再加上用于控制的微控制器(mcu)端日益復雜的功能邏輯需要消耗一定的算力,因此采用cpu輪詢的方式,控制電機的步數(shù)和啟停很難滿足實時性和可靠性,還易于產生一些故障。
技術實現(xiàn)思路
1、針對現(xiàn)有技術的不足,本發(fā)明的目的在于,提供一種基于霍爾傳感器和觸發(fā)器的電機,同時,相應提出了一種利用mcu內部的pwmcounter和中斷的控制方法,以確保電機控制的實時性和可靠性,解決以上技術問題。
2、本發(fā)明所采用的技術方案為:
3、一種基于霍爾傳感器和觸發(fā)器的電機,包括mcu、步進電機、步進電機控制器和霍爾傳感器,其特征在于,所述步進電機其傳動機構中設置有霍爾傳感器,所述mcu與步進電機控制器電路連接,所述步進電機控制器與步進電機電路連接,所述步進電機與霍爾傳感器電信號連接,所述霍爾傳感器與電路mcu電路連接。
4、所述的基于霍爾傳感器和觸發(fā)器的電機,其特征在于,所述步進電機控制器包括控制ic,為了實現(xiàn)相應的控制作用,所述微控制器包括與步進電機控制器控制ic具體如下的電路連接:
5、所述mcu設有引腳p00,所述步進電機控制器控制ic相應設有引腳2,用于錯誤狀態(tài)pin;
6、所述mcu設有引腳p01,所述步進電機控制器控制ic相應設有引腳1與其電路連接,用于運轉方向設置pin;
7、所述mcu設有引腳的p02,所述連接步進電機控制器控制ic相應設有引腳8,用于使能pin;
8、所述mcu設有引腳p03,所述步進電機控制器控制ic相應設有引腳3與其電路連接,使pwm脈沖輸入pin,用于控制電機運行的步數(shù);
9、所述mcu設有引腳p21,所述步進電機控制器控制ic相應設有引腳7與其電路連接,用于電機工作狀態(tài)設置1;
10、所述mcu設有引腳p50,所述步進電機控制器控制ic相應設有引腳6與其電路連接,用于電機工作狀態(tài)設置2;
11、所述mcu的設有引腳p51所述步進電機控制器控制ic相應設有引腳9與其電路連接,用于休眠狀態(tài)pin;
12、所述步進電機設有線圈a1、線圈a2、線圈b1和線圈b2,所述步進電機控制器與步進電機連接如下:
13、所述步進電機控制器設有引腳12,電路連接步進電機線圈a1;
14、所述步進電機控制器設有引腳22,電路連接步進電機線圈a2;
15、所述步進電機控制器設有引腳19,電路連接步進電機線圈b1;
16、所述步進電機控制器設有引腳11,電路連接步進電機線圈b2。
17、所述mcu設有引腳p70,所述霍爾傳感器連接mcu引腳p70,為了讓mcu能接收到霍爾傳感器輸出的狀態(tài)信號,進而知道步進電機運行的位置。
18、一種基于霍爾傳感器和觸發(fā)器的電機其控制方法,其特征在于,對步進電機控制,經上電后,mcu將依次通過下述步驟a、步驟b、步驟c完成對pwm外設和霍爾傳感器的初始化,電機待機,當用戶給出電機運行指令后,系統(tǒng)調用步驟d,并循環(huán)執(zhí)行,直到滿足停機條件后調用執(zhí)行步驟f停機,具體方法步驟內容如下:
19、步驟a:開啟電機
20、1.使能電機及霍爾傳感器供電;
21、2.注冊霍爾傳感器上升沿中斷;
22、3.注冊霍爾傳感器下降沿中斷;
23、4.設定電機運行方向;
24、5.啟動pwm驅動,電機開始啟動;
25、6.等待霍爾傳感器中斷出發(fā),執(zhí)行相應的邏輯處理;
26、步驟b:初始化pwm?gen,進行了如下幾項工作:
27、1.設置pwm?gen外設的時鐘域;
28、2.使能pwm?gen外設的分頻器;
29、3.初始化外設復用的pin腳;
30、4.初始化pwm?gen為電機專用模式;
31、5.使能pwm?gen;
32、6.觸發(fā)pwm?gen;
33、步驟c:初始化pwm?counter,進行了如下幾項工作:
34、1.設置pwm?counter的時鐘域;
35、2.使能pwm?counter外設分頻器;
36、3.初始化irq;
37、4.設置中斷向量表;
38、5.連接pwm發(fā)生器和觸發(fā)器;
39、6.初始化pwm?counter;
40、7.使能pwm?counter;
41、步驟d:連接pwm發(fā)生器的triggerout到pwmcounter的triggerin,進行了如下幾項工作:
42、1.設置pwm?counter的脈沖計數(shù);
43、2.觸發(fā)pwm?gen的輸出;
44、3.pwm?gen觸發(fā)pwm?counter的計數(shù)行為;
45、4.pwm?counter滿足計數(shù)條件后回調hal層的接口;
46、步驟e:霍爾傳感器初始化和觸發(fā),進行了如下幾項工作:
47、1.使能霍爾傳感器的供電pin腳;
48、2.初始化irq;
49、3.向hal層注冊回調函數(shù);
50、4.滿足事件要求時回調hal層和驅動;
51、步驟f:callback?handler,進行了如下幾個工作:
52、1.滿足條件后回調hal層的接口;
53、2.hal層回調驅動;
54、3.驅動回調應用層;
55、4.應用層執(zhí)行相應的策略;
56、所述步進電機處于待機狀態(tài)。
57、一種基于霍爾傳感器和觸發(fā)器的電機其控制方法,其特征在于,對步進電機控制,經上電后,mcu將依次通過下述步驟a、步驟b、步驟c完成對pwm外設和霍爾傳感器的初始化,電機待機,當用戶給出運行指令后,系統(tǒng)進入步驟d并循環(huán)執(zhí)行,如果在滿足步驟設定的條件之前,同樣也達成停機條件,所述的霍爾位置傳感器被觸發(fā),則執(zhí)行步驟e停機,具體方法步驟內容如下:
58、步驟a:開啟電機
59、1.使能電機及霍爾傳感器供電;
60、2.注冊霍爾傳感器上升沿中斷;
61、3.注冊霍爾傳感器下降沿中斷;
62、4.設定電機運行方向;
63、5.啟動pwm驅動,電機開始啟動;
64、6.等待霍爾傳感器中斷出發(fā),執(zhí)行相應的邏輯處理;
65、步驟b:初始化pwm?gen,進行了如下幾項工作:
66、1.設置pwm?gen外設的時鐘域;
67、2.使能pwm?gen外設的分頻器;
68、3.初始化外設復用的pin腳;
69、4.初始化pwm?gen為電機專用模式;
70、5.使能pwm?gen;
71、6.觸發(fā)pwm?gen;
72、步驟c:初始化pwm?counter,進行了如下幾項工作:
73、1.設置pwm?counter的時鐘域;
74、2.使能pwm?counter外設分頻器;
75、3.初始化irq;
76、4.設置中斷向量表;
77、5.連接pwm發(fā)生器和觸發(fā)器;
78、6.初始化pwm?counter;
79、7.使能pwm?counter;
80、步驟d:連接pwm發(fā)生器的triggerout到pwmcounter的triggerin,進行了如下幾項工作:
81、1.設置pwm?counter的脈沖計數(shù);
82、2.觸發(fā)pwm?gen的輸出;
83、3.pwm?gen觸發(fā)pwm?counter的計數(shù)行為;
84、4.pwm?counter滿足計數(shù)條件后回調hal層的接口;
85、步驟e:霍爾傳感器初始化和觸發(fā),進行了如下幾項工作:
86、1.使能霍爾傳感器的供電pin腳;
87、2.初始化irq;
88、3.向hal層注冊回調函數(shù);
89、4.滿足事件要求時回調hal層和驅動;
90、步驟e:霍爾傳感器初始化和觸發(fā),主要執(zhí)行了如下幾個工作:
91、1.使能霍爾傳感器的供電pin腳;
92、2.初始化irq;
93、3.向hal層注冊回調函數(shù);
94、4.滿足事件要求時回調hal層和驅動;
95、所述步進電機處于待機狀態(tài)。
96、本發(fā)明基于霍爾傳感器和觸發(fā)器的電機及其控制方法,設計嚴謹科學,節(jié)約mcu的i/o口資源,硬件結構及配置合理,電路簡潔,采用相應的方法進行實時有效控制電機,故障率少,作用安全可靠,工作效率高。