摘? 要:在車載半自動發(fā)控系統(tǒng)中,操作人員常常通過操縱桿來控制身管的調(diào)轉(zhuǎn),從而實現(xiàn)對目標的跟蹤瞄準控制。針對車載發(fā)控系統(tǒng)設(shè)計了一種基于CAN總線接口的操縱桿,該操縱桿由霍爾傳感器輸出兩軸連續(xù)模擬量,經(jīng)CAN總線接口轉(zhuǎn)換為方位、高低角控制數(shù)據(jù),還可以接收上位機的角度誤差信息并通過顯示屏顯示。產(chǎn)品設(shè)計過程中充分考慮了在電磁干擾環(huán)境下工作的特點,通過在電路和軟件方面采取措施,有效提高了產(chǎn)品的各項性能,目前已經(jīng)在系統(tǒng)中批量應用。
關(guān)鍵詞:發(fā)控系統(tǒng);CAN總線;操縱桿;霍爾傳感器
中圖分類號:TP211? ? ? 文獻標識碼:A? ? ? 文章編號:2096-4706(2023)13-0058-05
Design of on-Board Joystick Based on CAN Bus Interface
LI Kang
(Lianyungang Jari Electronics Co., Ltd., Lianyungang? 222006, China)
Abstract: In the on-board semi-automatic launch and control system, the operator usually controls the turning of the barrel through the joystick to realize the tracking and aiming control of the target. A joystick based on CAN bus interface is designed for on-board launch and control system, the Hall sensor in the joystick outputs two-axis continuous analog signals, which is converted into the azimuth, high and low angle control data through the CAN bus interface, and the joystick can also receive the angle error information of the upper computer and display it through the screen. In the process of product design, the characteristics of working in the environment of electromagnetic interference are fully considered, and the performance of the product is effectively improved by taking measures in circuit and software. Currently, it has been applied in batches of system.
Keywords: launch and control system; CAN bus; joystick; Hall sensor
0? 引? 言
操縱桿是目前控制系統(tǒng)的重要控制部件之一,采用高可靠開關(guān)、力敏傳感器或霍爾傳感器,將各種操控功能集中手/腳上完成,廣泛應用于航空、航天、戰(zhàn)車、船舶等運動載體操控中,實現(xiàn)對目標的控制、選擇、定位和跟蹤等[1]。在車載設(shè)備的發(fā)控系統(tǒng)中,跟蹤系統(tǒng)主要由一個操作者、一個雙自由度操縱桿、一個方位和高低電液伺服系統(tǒng)組成[2],操縱桿是實現(xiàn)由單一操作者進行目標跟蹤的關(guān)鍵部位。在跟蹤過程中,操作者需要通過顯示裝置獲得與設(shè)定值的角度誤差,進而通過操縱桿控制液壓式或機電式隨動系統(tǒng),最終實現(xiàn)對俯仰角、方位角的控制。
基于車載發(fā)控系統(tǒng)的功能控制需求,和在復雜電磁環(huán)境下工作的特點,本文介紹了其操縱桿的主要軟硬件設(shè)計內(nèi)容。該產(chǎn)品使用了穩(wěn)定的電源電路和接口電路設(shè)計,以CS32F系列微控制器實現(xiàn)霍爾傳感器模擬量的高精度采集,通過CAN總線進行數(shù)據(jù)輸出[3]。目前該操縱桿已在系統(tǒng)中安裝應用,性能穩(wěn)定、運行良好。
1? 總體設(shè)計
操縱桿采用CAN總線接口與發(fā)控系統(tǒng)進行通信,其具有接口連接簡單、可靠性高、抗干擾能力強、數(shù)據(jù)傳輸速度快等特點,在工業(yè)生產(chǎn)控制等諸多領(lǐng)域廣泛使用[4]。CAN的電路結(jié)構(gòu)簡單,用雙線串行通信方式可以使得各控制單元能夠通過CAN總線共享所有的信息和資源,達到簡化布線、減少傳感器數(shù)量、避免控制功能重復的效果。
操縱桿由霍爾傳感器、微控制器電路、電源電路、CAN接口電路、顯示屏等組成。操作人員通過操作霍爾傳感器輸出兩軸連續(xù)變化的0~+3.3 V模擬量[5],經(jīng)CS32F系列微控制器數(shù)據(jù)處理后轉(zhuǎn)化為12位數(shù)據(jù)量進行輸出。與此同時,CAN總線將系統(tǒng)反饋的角度誤差信息在微控制器內(nèi)進行處理,并在顯示屏上進行直觀顯示。操縱桿工作原理如圖1所示。
2? 硬件設(shè)計
2.1? 電源電路
操縱桿的電源設(shè)計是整個電路板PCB設(shè)計最重要的一環(huán)。操縱桿由+26 V直流電源供電,經(jīng)濾波器和穩(wěn)壓模塊處理得到傳感器和控制器供電電源[6],如圖2所示。針對前級電壓變化大、線路板空間非常小、輸出電壓穩(wěn)定度要求較高、電磁兼容性苛刻等要求,采取的措施主要包括:
1)電源端遵循先防護后濾波的原則,增加雙向TVS管SMBJ36CA,同時增加二極管V2防止電源反接。
2)在電源端增加一個小型PCB濾波器N1,額定電流1 A,將金屬外殼進行接地處理,對抑制直流電源線干擾具有較好效果。
3)在濾波器后端增加EMI濾波電路,L1為差模電感,C1、C2為濾波電容(4.7 μF/100 V)。
4)采用DC/DC隔離電源N2,支持+9~+36 V直流供電輸入,+5 V直流電壓輸出,5%到100%負載條件下輸出精度達到1%,具備輸出短路保護功能。
DC/DC隔離電源N2輸出的+5 V電壓可以供霍爾傳感器、CAN接口電路使用,而微控制器的供電電壓為+3.3 V,所以設(shè)計DC/DC電源轉(zhuǎn)換電路將+5 V電壓降壓到+3.3 V,電源轉(zhuǎn)換芯片使用AMS1117-3.3,其最大輸入電壓可支持+12 V,輸出電壓范圍為+3.267~+3.333 V,電壓線性度為0.2%,負載線性度為0.4%,可以提供1 A的輸出電流。電源轉(zhuǎn)換電路如圖3所示。
2.2? 霍爾傳感器
操縱桿選用了Melexis公司生產(chǎn)的MLX90333KGO型傳感器,該傳感器是一款三維絕對位置式傳感器,具有絕對式位置輸出、可編程線性傳輸特性,采用磁集中感應器和霍爾感應技術(shù),可輸出12位精度角度模擬信號,魯棒性強、穩(wěn)定性高。該傳感器通過檢測
X、Y、Z軸磁通量變化,進而由三個方向磁通量變化計算出磁鐵相對于傳感器的變化角度,并將角度通過芯片內(nèi)部數(shù)字-模擬轉(zhuǎn)換電路轉(zhuǎn)換成模擬電壓輸出,實現(xiàn)了機械運動量到電信號的轉(zhuǎn)換。該傳感器同時具有斷線診斷、片上診斷、過壓保護、欠壓檢測等功能。該電路使用+5 V供電,外圍電路設(shè)計如圖4所示。
MLX90333KGO傳感器的配置使用專用編程器PTC04,按圖5示意圖連接后,通過Melexis Programmable Toolbox配置軟件將模擬電壓輸出設(shè)置為0~+3.3 V,即操縱桿在-X、-Y方向最大位移時的電壓輸出0 V,+X、+Y方向最大位移時的電壓輸出為+3.3 V,滿足微控制器的模擬電壓輸出范圍要求。
2.3? 微控制器電路
操縱桿采用CS32F103CB微控制器,該芯片具有以下特點:
1)時鐘頻率最高可達72 MHz。
2)內(nèi)置64 KB程序Flash。
3)+2.0~+3.6 V供電和I/O引腳。
4)2個12位ADC,1 μs轉(zhuǎn)換時間,轉(zhuǎn)換范圍:0~+3.3 V。
5)串行單線調(diào)試(SWD)和JTAG接口。微控制器電路采用了+3.3 V供電和8 MHz外部晶振,將對操縱桿的操縱位移轉(zhuǎn)換為霍爾傳感器的X、Y兩軸電壓輸出并連接微控制器13、14引腳,進而進入內(nèi)嵌的2個12位的ADC并轉(zhuǎn)化為可以處理的數(shù)字量[7],如圖6所示。
2.4? CAN接口電路
CAN接口電路用于實現(xiàn)微控制器到CAN接口的信號轉(zhuǎn)換,設(shè)計如圖7所示。為了抑制內(nèi)部單板高頻噪聲通過接口向外傳導輻射,同時也為了增強單板對外部干擾的抗擾能力,在CAN接口處增加防護和濾波器件[8],采取的措施主要包括:
1)增加共模電感L2,用于濾除差分線上的共模干擾,其阻抗選擇范圍為120 Ω/100 MHz。
2)CANH、CANL端與地之間并聯(lián)2個47 pF的小電容,濾除總線上的高頻干擾,防止電磁輻射。
3)V3為雙向瞬態(tài)抑制二極管,反向關(guān)斷電壓
3.5 V以上,結(jié)電容小于100 pF。
3? 軟件設(shè)計
3.1? 軟件功能
操縱桿軟件功能模塊主要包括:初始化功能模塊、數(shù)據(jù)采集模塊、數(shù)據(jù)處理模塊、通信輸出模塊。各模塊實現(xiàn)的功能主要包括:
初始化功能模塊:上電初始對各個功能塊進行初始化,主要有系統(tǒng)時鐘初始化,參考電壓初始化,晶振初始化,IO口初始化,A/D功能初始化。
數(shù)據(jù)采集模塊:通過微控制器A/D模塊采集霍爾傳感器輸出的X軸和Y軸模擬信號,每1 ms采集一次,輸出的數(shù)字信號范圍:0×000~0×FFF。
數(shù)據(jù)處理模塊:檢測數(shù)字信號的合法性并進行上下限設(shè)置,采用IIR濾波器進行濾波,保證操縱桿駐停時的數(shù)據(jù)跳碼不大于5 LSB,同時該模塊會接收上位機發(fā)送的角度誤差信息,處理后發(fā)送至顯示屏。
通信輸出模塊:通過CAN接口按照傳輸協(xié)議輸出,使用CAN2.0標準信息幀格式,數(shù)據(jù)位傳輸率為250 Kbit/s,通信周期為10 ms。
3.2? IIR濾波設(shè)計
操縱桿需要采集模擬信號,采集模擬信號的信號鏈中難免引入干擾,輸出數(shù)據(jù)容易發(fā)生抖動進而造成跟蹤或控制不穩(wěn)[9]。為保證操縱桿控制目標跟蹤的穩(wěn)定性,在數(shù)據(jù)處理模塊中設(shè)計IIR低通濾波器進行濾波處理[10]。IIR數(shù)字濾波器,也稱為遞歸濾波器,其運算結(jié)構(gòu)通常由延遲、乘法和加法等基本運算組成,具有精度高、可靠性好、易于集成的特點。IIR濾波器設(shè)計工作量相對較小,可以利用模擬濾波器的設(shè)計結(jié)果,一般先設(shè)計一個合適的模擬濾波器,然后利用復值映射把模擬濾波器變換成數(shù)字濾波器。
常用的模擬濾波器有很多種,比如巴特沃斯濾波器、切比雪夫濾波器、貝塞爾濾波器等,操縱桿軟件設(shè)計采用巴特沃斯濾波器,它的特點是通頻帶內(nèi)的頻率響應曲線最大限度平坦,沒有起伏,而在阻頻帶則逐漸下降為零,在線性相位、衰減斜率和加載特性三個方面具有特性平衡的優(yōu)點。根據(jù)操縱桿輸出數(shù)據(jù)特征,對IIR數(shù)字濾波進行了仿真驗證,其中通帶最大衰減RP、組帶最大衰減RS分別設(shè)置為1.4、20。驗證參數(shù)及代碼如下:
fs=100;
Wp=1*2/fs;
Ws=4*2/fs;
Rp=1.4;
Rs=20;
t=0:(1/fs):10;
[n,Wn]=buttord(Wp,Ws,Rp,Rs);
y=sin(2*3.14*10*t)+sin(2*3.14*1*t);
[b,a]=butter(n,Wn);
yo=filter(b,a,y);
plot(t,y,t,yo,'r')
通過以上仿真及微控制器內(nèi)的代碼驗證,數(shù)字輸出在加入濾波功能后得到了較大改善,操縱桿駐停和輸入變化時的改善效果分別如圖8、圖9所示。
綜上分析,操縱桿駐停時的輸出數(shù)據(jù)波動范圍最大為15 LSB,經(jīng)IIR濾波后,數(shù)據(jù)波動范圍達到最大5 LSB,當操控操縱桿時,其輸出數(shù)據(jù)變化最大同樣達到5 LSB,且濾波前后幾乎沒有延時,滿足了數(shù)據(jù)處理要求。
3.3? 異常檢測設(shè)計
操縱桿軟件在數(shù)據(jù)采集模塊、數(shù)據(jù)處理模塊、通信輸出模塊內(nèi)加入了異常檢測和防護功能,包括以下內(nèi)容。
3.3.1? 電壓漂移或掉線檢測
在數(shù)據(jù)采集模塊內(nèi),微控制器能夠?qū)崟r檢測霍爾傳感器零位電壓大小和電壓跳變范圍,若不操作操縱桿時的模擬電壓超出正常工作范圍或發(fā)生電壓極值跳變,可以判定霍爾傳感器出現(xiàn)電壓漂移、操縱桿的手柄位置不居中或霍爾傳感器至微控制器的導線斷開[11],微控制器通過CAN接口向上位機上報故障并切斷霍爾傳感器的數(shù)據(jù)采集。
3.3.2? 防止顯示屏熄滅和倒轉(zhuǎn)
當操縱桿在進行電磁兼容或ESD靜電試驗時,顯示屏容易發(fā)生熄滅故障。為了避免屏幕熄滅,在數(shù)據(jù)處理模塊內(nèi)增加定時刷屏指令,每隔1 s對屏幕進行刷新,保證在屏幕異常熄滅后能重新顯示。同時,因屏幕具有翻轉(zhuǎn)功能,在實際ESD試驗過程中極易誤觸發(fā)該翻轉(zhuǎn)指令從而造成屏幕顯示的內(nèi)容倒轉(zhuǎn),因此在軟件中加入了屏幕倒轉(zhuǎn)后的自動恢復功能。
3.3.3? 通信中斷的報錯
通信輸出模塊內(nèi),微控制器定時檢測CAN通信協(xié)議是否正常收發(fā),當CAN通信出現(xiàn)包括CAN通信線纜斷開、CAN通信芯片失效等問題時,微控制器會向顯示屏發(fā)送報錯指令,當接收標志位恢復則報錯消失、與上位機通信恢復正常,如圖10所示。
4? 結(jié)? 論
針對車載發(fā)控系統(tǒng)的操縱桿使用需求,本文設(shè)計了一種基于CAN總線接口的多功能操縱桿,該操縱桿使用了CS32F系列微控制器作為主控芯片,硬件電路在實現(xiàn)控制功能的同時充分考慮了靜電防護、抗干擾等防護措施,軟件設(shè)計時加入了IIR濾波、異常檢測等功能,能較好地實現(xiàn)對發(fā)控裝置俯仰和方位角度的控制,提高了發(fā)控系統(tǒng)的可靠性。同時操縱桿還可以接收發(fā)控角度誤差信息并進行顯示,進一步提高了操控過程的準確度。
參考文獻:
[1] 陳碧海,程寶進,李勇.基于C8051F060單片機的精密數(shù)字壓力表設(shè)計 [J].遙測遙控,2019,40(4):71-74.
[2] 趙曉娜,蔣潔.一種雙傳感器操縱桿的設(shè)計實現(xiàn) [J].電子質(zhì)量,2021(5):12-14.
[3] 王爍.對基于STM32的CAN總線通信節(jié)點設(shè)計分析 [J].中國新通信,2018,20(18):32.
[4] 卞子丹.自行火炮CAN總線實時數(shù)據(jù)采集與故障診斷 [D].西安:西安工業(yè)大學,2020.
[5] 蔚道嘉.低噪聲線性霍爾傳感器的研究與設(shè)計 [D].西安:西安電子科技大學,2020.
[6] 李海寶,杜雪珍.一種4冗余高可靠雙軸輸出操縱桿的設(shè)計與實現(xiàn) [J].電子質(zhì)量,2018(11):16-20.
[7] 屠曉偉,俞潤超,楊慶華.基于STM32和USB的多通道數(shù)據(jù)采集系統(tǒng)設(shè)計與實現(xiàn) [J].自動化儀表,2020,41(5):84-87.
[8] 王聰,魏文娟,王超.基于CANScope的CAN總線故障診斷及改進設(shè)計 [J].中國測試,2018,44(S1):166-171.
[9] 麻召普,張振莊,王小宇,等.船載衛(wèi)通天線自抗擾控制方法研究 [J].河北省科學院學報,2022,39(2):59-63.
[10] 萬小川.一種基于STM32的巴特沃斯帶阻ⅡR濾波算法的實現(xiàn) [J].電子技術(shù)與軟件工程,2018(13):81-83.
[11] 龍瑋潔,高文政.一種操縱桿的死區(qū)處理電路設(shè)計 [J].電子質(zhì)量,2018(10):87-89.
作者簡介:李康(1990—),男,漢族,江蘇徐州人,工程師,碩士研究生,研究方向:人機操控技術(shù)。
收稿日期:2023-02-18