HCTL-1100是美國Agilent公司生產的高性能通用運動控制系列芯片。利用它可以與主處理器、放大器、電機和增量式編碼器構成一個完整的運動控制系統。因此HCTL-1100可廣泛應用于打印機、醫療器械、原材料加工和各種自動化控制領域。文中介紹了HCTL-1100芯片的結構、原理及應用。 關鍵詞:HCTL-1100運動控制單片機電機增量式編碼器1HCTL-1100的特性HCTL-1100是美國Agilent公司生產的高性能通用運動控制系列芯片,它內部集成了數字濾波器、換向器等可編程器件,因而可以使系統使用最少的元件來實現運行控制,這樣不僅減輕了上位主機的控制負擔,同時還具有很大的靈活性。HCTL-1100的主要特點如下:●功耗低;●具有PDIP和PLCC兩種封裝形式;●可用來控制直流有刷、直流無刷和步進電機;●內含可編程數字濾波器和換向器;●具有8位并行和PWM(脈寬調制)電機額定值輸出端口;●與TTL電平兼容;●帶有協調多個HCTL-1100的SYNC(同步)引腳;●具有100kHz~2MHz的工作頻率范圍;●帶有編碼器輸入端口。2TCTL-1100的引腳功能TCTL-1100具有40-PDIP和44-PLCC兩種封裝形式:圖1和圖2分別為這兩種封裝形式的腳排列圖。HCTL-1100運動控制芯片各主要引腳的功能說明如下:●同步引腳(SYNC)該引腳只在INIT/IDLE模式下有效。可用來同步兩個或多個芯片。將多個芯片的SYNC端連在一起來接收上位機的命令可實現同步控制。●限位引腳(LIMIT)用于輸入緊急限位標志,低電平有效。當該腳有效時,器件將進入INIT/IDLE模式,清除電機額定值并切斷電機電源,同時清除三個控制模式標志。當由INIT/IDLE模式重新進入控制模式后,這些標志可自動恢復原值。不用時應將該腳連到VDD,否則會引起觸發而使系統進入錯誤的緊急狀態。●停止引腳(STOP)該停止標志僅適用于積分速率模式,低電平有效。有效時,系統將會減速直到停止,同時將保持零速度狀態直到該位變高和新的速度命令被接收為止。不用時也應將該端連到VDD。●編碼器輸入引腳(CHA,CHB,INDEX)這三個引腳可用于接收增量式編碼器的TTL,電平輸出。共中通道A和B所接收的信號將被編碼成24位位置計數器信號并從換向器輸出。●電機額定值端口(MC0-MC7)八位電機額定值端口由寄存器R08H組成,該寄存器的數據將直接傳到外部引腳MC0-MC7。其中MC7是最高有效位,R08H可讀可寫,寫入時通常為INIT/IDLE狀態。●脈寬調制(PWM)輸出端口(PLUSE,SIGN)PWM端口由PULSE和SIGN引腳組成。該端口輸出的電機額定值為帶有正負極性的脈寬調制信號。●梯度式引腳(PROF)該引腳與內部狀態寄存器的軟件標志位4位連,也可由標志寄存器(R00H)的位0表示。當引腳和標志位為高時,表明系統正處于梯度式移動狀態。移動結束后,控制器將對該標志位清零。應當注意:標志位清零的那一刻并不表明電機已停止工作。因此,它只是命令描述的完成而不是實際操作的完成。如果電機在移動中發生延遲而能跟上命令所要求的物理移動,則標志位將在移動完成前被清零。●初始化/空閑引腳(INIT)該引腳的狀態用于表明HCTL-1100正處于初始化/空閑狀態,它應與內部狀態寄存器的位5相連,也可由標志寄存器(R00H)的位1表示。●換向器引腳(PHA~PHD)這些引腳用于驅動無刷或步進電機。使用時可以對這四個引腳進行編程,以用于驅動多相電機的每個線圈。3工作原理HCTL-1100可通過8位雙向地址數據復用端口與主機相連,以接收運動控制命令并控制電機帶動目標系統運動,同時從增量式編碼器的積分輸出端接收位置(或速度)反饋信息。將該信息與預置的額定值進行比較,并將矯正后的值輸出給控制電機便可以帶動目標系統的運動。圖3為其運動控制原理框圖,圖4所示為HCTL-1100的內部結構框圖。4HCTL-1100的寄存器HCTL-1100的工作過程由內部的64個八位寄存器控制。其中35個寄存器用于進行初始化或命令字的寫入等操作。剩余的29個作為臨時寄存器,但這些寄存器不能直接使用。可用的35個寄存器可分為一般控制、輸出、濾波器和換向器四類。一般控制寄存器又包括標志寄存器(R00H)、可編程計數器(R05H)、狀態寄存器(R07H)、采樣定時寄存器(R0FH)、讀實際位置和預置實際位置寄存器等。而輸出寄存器(包括禁止極性轉換,8位電機額定值和脈寬調制額定值輸出)則包括電機額定值寄存器(R08H)和脈寬調制額定值寄存器(R09H)兩種。5工作流程HCTL-1100有三種設置路徑和四種控制模式可供用戶選擇。三種路徑包括復位、初始化/空歲和排列對齊。四種控制模式分別為:位置控制、比例速率控制、梯形速度控制和積分速度控制。圖5給出了如何用命令來設置路徑和切換控制模式的流程圖。6具體應用用HCTL-1100與主機(以8051為例)接口時,可通過8051的I/O端口P1.0~P2.3來控制HCTL-1100的讀/寫、輸出使能、片選、地址鎖存和復位等控制引腳。其部分軟件程序如下:RD1100:SETBP2.0;設置讀/寫狀態為讀MOVP,1B;鎖存地址CLRP2.3;鎖存地址CLRP2.3;發地址鎖存信號脈沖SETBP2.3MOVP1,#0FFHCLRP2.2;發片選信號脈沖SETBP2.2NOPNOPNOP;延時4 s,為1MHz的HCTL-1100提供足夠的時間CLRP2.1;設置輸出勢能引腳為效MOVA,P0;從1100獲取數據SETBP2.1;使輸出勢能無效RET