《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 嵌入式技術(shù) > 設(shè)計(jì)應(yīng)用 > 基于ARM-Linux的電子控制油門設(shè)計(jì)
基于ARM-Linux的電子控制油門設(shè)計(jì)
單片機(jī)與嵌入式系統(tǒng)
位門,潘明,趙斌潔
摘要: 傳統(tǒng)的油門通過(guò)右腳進(jìn)行機(jī)械控制,并且剎車也用右腳控制。在緊急情況時(shí),剎車踏在油門的事故時(shí)有發(fā)生。傳統(tǒng)油門通過(guò)機(jī)械傳導(dǎo),結(jié)構(gòu)較為復(fù)雜,增加成本。電子油門控制系統(tǒng)通過(guò)指令控制執(zhí)行部分——舵機(jī)來(lái)控制油門的開度,實(shí)現(xiàn)發(fā)動(dòng)機(jī)油門開度的精確控制。與此同時(shí),通過(guò)節(jié)氣門開度傳感器,此設(shè)計(jì)可以從顯示部分得知油門的實(shí)際開度,并有利于新駕駛員駕駛,避免半途熄火的危險(xiǎn)駕駛。汽車可按選定的速度穩(wěn)定行駛,無(wú)需駕駛員反復(fù)調(diào)節(jié)節(jié)
Abstract:
Key words :

引言
巡航控制系統(tǒng)(CCS)是20世紀(jì)60年代發(fā)展起來(lái)的,又稱為恒速行駛系統(tǒng)。巡航控制系統(tǒng)工作時(shí),ECU根據(jù)各種傳感器輸送來(lái)的信號(hào)判斷汽車的運(yùn)行狀況,通過(guò)執(zhí)行元件自動(dòng)調(diào)節(jié)節(jié)氣門的開度使汽車的行駛速度與設(shè)定的車速保持一致。汽車在良好路面上長(zhǎng)時(shí)間行駛時(shí),駕駛員啟動(dòng)巡航控制系統(tǒng)并設(shè)定行駛速度,不需駕駛員操縱加速踏板,通過(guò)巡航控制系統(tǒng)即可自動(dòng)保持既定的行駛速度,不僅減輕了駕駛員的勞動(dòng)強(qiáng)度,同時(shí)利用先進(jìn)的電子控制技術(shù)控制節(jié)氣門的開度,比駕駛員操縱節(jié)氣門更精確,汽車燃料經(jīng)濟(jì)性、排放污染性也可得到改善。

1 系統(tǒng)原理
1.1 電控油門原理
工作時(shí),由駕駛員發(fā)出轉(zhuǎn)速的控制指令,由節(jié)氣門開度傳感器采集發(fā)動(dòng)機(jī)的轉(zhuǎn)速參數(shù),并把信號(hào)輸入電控單元;電控單元將控制信號(hào)和反饋的節(jié)氣門位置信號(hào)進(jìn)行比較,根據(jù)比較的結(jié)果來(lái)驅(qū)動(dòng)執(zhí)行器改變節(jié)氣門的開度,使實(shí)際的開度與控制開度達(dá)到一致,從而實(shí)現(xiàn)車速的自動(dòng)控制。
1.2 舵機(jī)控制原理
舵機(jī)是一種位置(角度)伺服驅(qū)動(dòng)器,適用于那些角度需要不斷變化并可以保持的系統(tǒng)。S3003型舵機(jī)有3個(gè)引腳,分別為電源Vcc、地GND和控制線Signal。控制信號(hào)由Signal通道進(jìn)入信號(hào)調(diào)制芯片,獲得直流偏置電壓。它的內(nèi)部有一個(gè)基準(zhǔn)電路,產(chǎn)生周期為20 ms、寬度為1.5 ms的基準(zhǔn)信號(hào),將獲得的直流偏置電壓與電位器的電壓比較,獲得電壓差輸出。最后,電壓差的正負(fù)輸出到電機(jī)驅(qū)動(dòng)芯片以決定電機(jī)的正反轉(zhuǎn)。當(dāng)電機(jī)轉(zhuǎn)速一定時(shí),通過(guò)級(jí)聯(lián)減速齒輪帶動(dòng)電位器旋轉(zhuǎn),使得電壓差為0,電機(jī)停止轉(zhuǎn)動(dòng)。
控制線的輸入是一個(gè)寬度可調(diào)的周期性方波脈沖信號(hào),方波脈沖信號(hào)的周期為20 ms(即頻率為50 Hz)。當(dāng)方波的脈沖寬度改變時(shí),舵機(jī)的角度發(fā)生改變,角度變化與脈沖寬度成正比。其輸出軸轉(zhuǎn)角與輸入脈沖寬度關(guān)系如圖1所示。

a.jpg



2 系統(tǒng)設(shè)計(jì)
本系統(tǒng)采用三星公司的S3C2410和Futaba公司的S3003型舵機(jī)分別作為控制器和執(zhí)行器,使用Linux操作系統(tǒng),實(shí)驗(yàn)平臺(tái)為濟(jì)南恒信有限公司的發(fā)動(dòng)機(jī)實(shí)驗(yàn)平臺(tái)。

2.1 系統(tǒng)設(shè)計(jì)流程
系統(tǒng)流程如圖2所示。控制器S3C2410完成各項(xiàng)初始化工作,接收來(lái)自操作人員的cmd指令,根據(jù)cmd的值來(lái)進(jìn)行一系列的處理,包括停止執(zhí)行器、旋轉(zhuǎn)多少角度等。然后通過(guò)節(jié)氣門開度傳感器和轉(zhuǎn)速傳感器計(jì)算出等效的cmd值,并與cmd進(jìn)行比較以決定是進(jìn)行下一次cmd的判斷,還是涮整執(zhí)行器的角度。

b.jpg


2.2 設(shè)置Linux系統(tǒng)時(shí)鐘頻率
為了降低電磁干擾和降低板間布線要求,芯片外接的晶振頻率通常很低,通過(guò)時(shí)鐘控制邏輯的PLL提高系統(tǒng)時(shí)鐘。在三星公司的S3C2 410A手冊(cè)中列出了推薦的幾種時(shí)鐘頻率,這里我們選用輸出時(shí)鐘頻率FCLK=202.80 MHz的配置,即PLL控制寄存器中的:MDIV=161(0xa1)、PDIV=3、SDIV=1。
在U-Boot的board/smdk2410/smdk2410.c中進(jìn)行設(shè)置:
c.jpg
d.jpg
由以上程序可知FCLK=202.80 MHz,HCLK=101.40 MHz,PCLK=50.70 MHz,而S3C2410的PWM模塊使用的時(shí)鐘是PCLK,所以PWM的輸入時(shí)鐘為50.7MHz。

2.3 舵機(jī)驅(qū)動(dòng)程序編寫
2.3.1 使用udev來(lái)動(dòng)態(tài)建立設(shè)備節(jié)點(diǎn)
Linux 2.6系列的內(nèi)核使用udevr來(lái)管理/dev目錄下的設(shè)備節(jié)點(diǎn)。同時(shí)它也用來(lái)接替devfs及hotplug的功能,這意味著它要在添加/刪除硬件時(shí)處理/dev目錄以及所有用戶空間的行為,包括加載firmware時(shí)。udev依賴于sysfs輸出到用戶空間的所有設(shè)備信息,以及當(dāng)設(shè)備添加或者刪除時(shí)/sbin/hotplug對(duì)它的通知。
為了udevr能夠正常工作,一個(gè)設(shè)備驅(qū)動(dòng)程序要做的事情是通過(guò)sysfs將驅(qū)動(dòng)程序所控制設(shè)備的主設(shè)備號(hào)和次沒(méi)備號(hào)導(dǎo)出到用戶空間。ud ev在sysfs中的/class/目錄樹中搜索名為dev的文件,這樣內(nèi)核通過(guò)/sbin/hotplug接口調(diào)用它的時(shí)候,就能獲得分配給特定設(shè)備的主設(shè)備號(hào)和次設(shè)備號(hào)。一個(gè)設(shè)備驅(qū)動(dòng)程序只需要使用class_create接口為它所控制的每個(gè)設(shè)備創(chuàng)建該文件。
使用class_create函數(shù)創(chuàng)建class結(jié)構(gòu),這段代碼在sysfs中的/sys/class下創(chuàng)建一個(gè)目錄,目錄中創(chuàng)建一個(gè)新的“pwm”的class類以容納通過(guò)sysfs輸出的驅(qū)動(dòng)程序的所有屬性。其中的一個(gè)屬性是dev文件條目,它由class_device_create()創(chuàng)建——它觸發(fā)了用戶空間udev守護(hù)進(jìn)程創(chuàng)建/dev/pwm設(shè)備節(jié)點(diǎn)。代碼如下所示:
e.jpg
當(dāng)驅(qū)動(dòng)程序發(fā)現(xiàn)一個(gè)設(shè)備并且已經(jīng)分配了一個(gè)次設(shè)備號(hào)時(shí),驅(qū)動(dòng)程序?qū)⒄{(diào)用class_device_create函數(shù):
class_device_create(pwm_class,NULL,MKDEV(devicemajor,0),NULL,“pwm”);
這段代碼在/sys/class/pwm下創(chuàng)建一個(gè)子目錄pwmN,這里N是設(shè)備的次設(shè)備號(hào)。在這個(gè)目錄中創(chuàng)建一個(gè)文件dev,有了這個(gè)udev就可以在/dev目錄下為該設(shè)備創(chuàng)建一個(gè)設(shè)備節(jié)點(diǎn)。
當(dāng)設(shè)備與驅(qū)動(dòng)程序脫離時(shí),它也與分配的次設(shè)備號(hào)脫離,此時(shí)需要調(diào)用class_device_destroy(struct class*cls,dev_t devt)函數(shù)刪除該設(shè)備在sysfs中的入口項(xiàng):
class_device_destroy(pwm_class,MKDEV(device_major,0))。
2.3.2 配置PWM的輸出頻率
先使用Linux系統(tǒng)提供的系統(tǒng)函數(shù)來(lái)獲取時(shí)鐘pclk:
elk_p=clk_get(NULL“pclk”);
pclk=clk_get_rate(clk_p);
由S3C2410數(shù)據(jù)手冊(cè)可知,經(jīng)過(guò)預(yù)分頻器和時(shí)鐘分頻器之后,計(jì)算定時(shí)器0的輸入時(shí)鐘頻率為clkin=(pclk/{prescaler0+1}/divider value);再通過(guò)16位的定時(shí)器0計(jì)數(shù)寄存器TCNTB0、和定時(shí)器0比較計(jì)數(shù)器TCMPB0(它們的值分別用tcnt和tcmp表示)分頻,這樣就可以從引腳Tout0處得到合適的PWM波形信號(hào)了,其周期為T=tcnt/clkin,高電平周期為Th=tcmp/clkin。
已知pclk=50.7 MHz,令
MAX=(prescale0+1)×(divider value)  (1)
則有clkin=pclk/MAX;可以取tcnt=pclk/date;又因?yàn)閠cnt為16位,所以tcnt≤65 535,這樣可以直接消去pclk中的507;而系統(tǒng)需要T=20 ms的周期,先提取出系數(shù)50,即:
tcnt=pclk/(date×50)=1 014 000/date   (2)
得出MAX=date≥1 6,prescaler0的取值范圍為0~255,divider value的可取值為1、2、4、16。
要求的PWM波形周期為20 ms,正電平寬度為0.5~2.5 ms,20 ms/0.5 ms=40,所以:
tcmp=tcnt/40+(cmd-1)×tcnt/(40×N)(3)
其中temp和tcnt均為整數(shù);N即為細(xì)分系數(shù),它表示cmd加1時(shí)舵機(jī)將旋轉(zhuǎn)(45/N)°;cmd是要輸入的控制參數(shù),用它來(lái)控制舵機(jī)的角度。
由式(1)~(3),以及tcmp和tcnt盡量取整數(shù)以減小誤差的原則,MAX=date=可取16、20、25。

3 實(shí)驗(yàn)結(jié)果分析
理論上,細(xì)分系數(shù)N取值越大、執(zhí)行器的動(dòng)作越精確越好,但過(guò)大的細(xì)分系數(shù)會(huì)導(dǎo)致執(zhí)行器的命令對(duì)cmd的響應(yīng)變慢。因此,N的取值應(yīng)該根據(jù)執(zhí)行器到節(jié)氣門閥的距離來(lái)綜合考慮,取細(xì)分系數(shù)N=5即使用公式:tcmp=tent(cmd+4)/200,最小角度為(45/5)=9,足以滿足實(shí)驗(yàn)的需要。
采用實(shí)驗(yàn)的方法,對(duì)MAX=date=16、20、25分別進(jìn)行實(shí)驗(yàn),并使用示波器進(jìn)行觀察根據(jù)寄存器的取整特性來(lái)對(duì)MAX=date的值進(jìn)行綜合的考量。結(jié)果如表1~表3所列。其中cmd為輸入指令.err為誤差,Wh為高電平寬度,~Wh為實(shí)際的高電平寬度。

f.jpg


由以上數(shù)據(jù)可以看出取MAX=date=20時(shí),誤差最小。由式(4)可知,prescale0+1=20、10、5對(duì)應(yīng)的dividervalue=1、2、4。

結(jié)語(yǔ)
利用ARM鎖相環(huán)所產(chǎn)生的高頻率可以獲得更精細(xì)的PWM波,從而對(duì)舵機(jī)實(shí)現(xiàn)更精確的控制來(lái)達(dá)到油門精確控制的目的。本文從理論和實(shí)踐兩方面實(shí)現(xiàn)了舵機(jī)角度為9的控制,要想獲得更細(xì)分的角度,只需將N的值取大。如N=15,可獲得的最小控制角度為(45/15)=3;N=45,可獲得的最小控制角度為(45/45)=1。

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
狠狠爱综合网| 夜夜嗨av一区二区三区中文字幕 | 欧美精品亚洲| 老司机aⅴ在线精品导航| 久久精品国产一区二区电影 | 久久久一区二区| 欧美一区二区三区婷婷月色| 性欧美xxxx视频在线观看| 一区二区三区四区五区精品视频| 亚洲精品男同| 亚洲国内精品在线| 在线不卡免费欧美| 尤物yw午夜国产精品视频明星| 国产综合精品一区| 国产视频欧美视频| 国产亚洲精品成人av久久ww| 国产美女诱惑一区二区| 国产精品视频精品| 国产精品亚洲激情| 国产日韩成人精品| 国产女人精品视频| 国产视频欧美| 国模私拍视频一区| 韩国欧美国产1区| 国产在线视频欧美| 国内精品免费午夜毛片| 国外视频精品毛片| 黄色成人av网站| 影音先锋日韩精品| 最新国产乱人伦偷精品免费网站| 91久久精品美女高潮| 亚洲国产成人精品女人久久久 | 在线观看日韩专区| 亚洲国产成人porn| 亚洲日韩欧美视频一区| 亚洲狼人综合| 在线视频一区二区| 亚洲欧美精品在线观看| 欧美一级专区| 亚洲福利在线看| 亚洲欧洲在线一区| 日韩一级不卡| 亚洲欧美日韩在线不卡| 欧美一区二区三区另类| 久久久久久色| 欧美v日韩v国产v| 欧美精品大片| 国产精品久久久久77777| 国产精品一区二区在线观看不卡| 国产一区二区三区高清在线观看| 国内精品写真在线观看| 亚洲大胆人体在线| 亚洲精品欧洲| 亚洲小视频在线观看| 欧美与欧洲交xxxx免费观看| 亚洲精品一区二区三区樱花| 亚洲天堂av在线免费观看| 欧美在线观看日本一区| 免费观看一级特黄欧美大片| 欧美精品色一区二区三区| 欧美日韩一二三四五区| 国产欧美精品一区aⅴ影院| 精品99一区二区三区| 日韩一区二区福利| 欧美一区深夜视频| 一本在线高清不卡dvd | 欧美一区=区| 欧美成人情趣视频| 国产精品日日做人人爱| 亚洲国产女人aaa毛片在线| 亚洲无玛一区| 亚洲国产精品美女| 午夜精品一区二区三区电影天堂| 久久天堂精品| 欧美视频一区二区三区在线观看| 国产亚洲激情视频在线| 亚洲免费观看高清在线观看| 欧美在线免费观看视频| 一本久道综合久久精品| 久久国产精品久久久久久电车| 欧美精品videossex性护士| 国产区亚洲区欧美区| 亚洲日韩欧美视频一区| 午夜视频在线观看一区二区三区| 一本色道**综合亚洲精品蜜桃冫| 久久久成人网| 国产精品theporn88| 亚洲激情在线激情| 午夜精品久久久久久| 一区二区三区欧美在线观看| 久热综合在线亚洲精品| 国产精品一区二区你懂得| 亚洲欧洲午夜| 亚洲国产日韩欧美在线99| 欧美一区二区视频观看视频| 欧美日韩国产精品| 影音先锋中文字幕一区| 午夜精品久久久久久久| 亚洲一区二区三区成人在线视频精品| 裸体丰满少妇做受久久99精品 | 亚洲欧洲日产国产网站| 亚洲第一精品夜夜躁人人爽| 欧美一级电影久久| 国产精品裸体一区二区三区| 亚洲乱码国产乱码精品精| 亚洲国产天堂久久国产91| 久久嫩草精品久久久久| 国产免费亚洲高清| 亚洲欧美精品在线| 午夜精品久久久久久久蜜桃app| 欧美日韩在线视频一区| 亚洲精品乱码久久久久久蜜桃91| 最新中文字幕一区二区三区| 免费观看成人www动漫视频| 狠狠久久亚洲欧美专区| 久久精品色图| 老鸭窝毛片一区二区三区| 狠狠色丁香久久婷婷综合丁香| 校园春色国产精品| 欧美在线播放| 国产欧美大片| 午夜精品区一区二区三| 欧美在线视频免费| 国产伦精品免费视频| 亚洲淫性视频| 亚洲专区国产精品| 久久精品国产一区二区三区免费看 | 欧美精品18| 国内视频一区| 亚洲国产成人91精品 | 亚洲一区在线直播| 欧美精品三级在线观看| 在线成人中文字幕| 久久国产精品久久久久久电车| 久久天天狠狠| 国产主播精品在线| 欧美一区三区二区在线观看| 欧美一区二区三区免费观看| 国产精品国码视频| 亚洲永久免费av| 亚洲欧美日韩成人高清在线一区| 欧美日韩二区三区| 亚洲精品社区| 一区二区高清视频| 欧美激情成人在线| 亚洲欧洲日本专区| 99精品热视频| 欧美久久在线| 亚洲毛片在线观看.| 亚洲欧美久久久久一区二区三区| 国产精品成人久久久久| 亚洲视频综合在线| 亚洲一区二区三区在线观看视频| 欧美日韩一区二| 亚洲欧美影院| 久久久久久穴| 尤物视频一区二区| 91久久极品少妇xxxxⅹ软件| 欧美电影美腿模特1979在线看| 中国日韩欧美久久久久久久久| 亚洲网站在线播放| 国产精品国产a| 亚洲欧美日韩综合一区| 久久精品国产99国产精品澳门| 在线观看亚洲精品| 99国产精品久久久| 欧美午夜大胆人体| 亚洲午夜久久久| 亚洲免费在线| 在线观看国产精品网站| 亚洲精品一区在线观看| 欧美三区美女| 午夜精品www| 久久久久久亚洲精品中文字幕 | 午夜国产一区| 国产精品一区亚洲| 久久国产日韩| 国产精品v亚洲精品v日韩精品| 亚洲女女做受ⅹxx高潮| 另类天堂av| 亚洲毛片一区二区| 亚洲视频一区二区在线观看| 狠狠色伊人亚洲综合网站色| 91久久综合亚洲鲁鲁五月天| 欧美日韩一区不卡| 亚洲一区三区电影在线观看| 亚洲一二三区精品| 亚洲第一精品夜夜躁人人躁 | 欧美一区二区三区免费视| 国内在线观看一区二区三区| 亚洲另类视频| 国产精品视频一二三| 亚洲激情另类| 欧美少妇一区| 欧美一区二区福利在线| 久久久久久网站| 亚洲女爱视频在线| 欧美成人资源网| 亚洲欧美综合国产精品一区| 欧美大片在线看免费观看|