《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于PID算法在噴繪機小車控制系統的應用
基于PID算法在噴繪機小車控制系統的應用
2015年微型機與應用第8期
劉 晉,蘇 臣,金禹含,步亞男
(遼寧師范大學 計算機與信息技術學院,遼寧 大連 116081)
摘要: 選取STM32系列的STM32F103RBT6作為主控系統,以L6203作為直流電機的驅動;根據小車的位置通過PID算法調節小車的速度,對主控中高級定時器進行設計,通過UART顯示數據;觀測小車運行過程中能否消除慣性帶來的影響并立刻轉向,及PID算法是否可以應用在噴繪機小車的控制系統中。經過理論分析和軟硬件結合測試表明,該設計不但解決了直流電機中由于慣性大難以剎車的問題,并驗證了PID算法在噴繪機控制系統中的可行性和實用性。
Abstract:
Key words :

  摘  要: 選取STM32系列的STM32F103RBT6作為主控系統,以L6203作為直流電機的驅動;根據小車的位置通過PID算法調節小車的速度,對主控中高級定時器進行設計,通過UART顯示數據;觀測小車運行過程中能否消除慣性帶來的影響并立刻轉向,及PID算法是否可以應用在噴繪機小車的控制系統中。經過理論分析和軟硬件結合測試表明,該設計不但解決了直流電機中由于慣性大難以剎車的問題,并驗證了PID算法在噴繪機控制系統中的可行性和實用性。

  關鍵詞: STM32;L6203;PID算法;噴繪機

0 引言

  噴墨式噴繪機為保證噴繪出圖像精準細膩,小車上的噴頭每行掃描過程中按需進行噴墨,但是來自小車的平穩性以及在改變方向時小車的運動狀態,直接影響噴頭墨滴噴出的位置。如何在保證小車平穩運行前提下,根據提供的信號改變小車的運行狀態值得深入研究和探討。

1 系統設計理念

  攜帶噴頭的小車在噴繪軌道上來回運動,在需要的位置上(即像素點)噴頭進行噴墨。主控發控制信號給電機驅動模塊來控制電機,從而控制小車的方向和位置。電機可以是步進電機、位置控制方式的伺服電機和直流電機。步進電機啟動力矩大,易于精確控制位置,但很難達到高速,實際應用中使用較少。位置控制方式的伺服電機不但具有步進電機的優點,而且內置的控制器具有電子齒輪易改傳動比,實際應用中采用較多,但此電機非常昂貴,從實際的成本出發不易選用。綜合考慮,采用成本較低的普通直流電機,通過調整驅動電壓調整速度,但直流電機不能精確定位,必須為其配備精密的位置檢測機構以及伺服控制機構才能實現較精確的定位。由于攜帶噴頭的小車慣性很大,方向調整時很難瞬時根據控制信號來更改方向,總是在主控發送完調整方向信號后速度慢慢減到0,然后才能調整方向從0慢慢加速。由于機械特性增加了誤差,不少研發人員采用在改變方向前先加高占空比反相沖擊電壓,然后再調整適合的占空比,但實際應用過程中此方法并不完全合適。這是因為質量太大,高脈沖難以沖擊反相速度并調整方向。綜合不同的方法和經驗,借助STM32主控系統的優勢,通過理論研究和實際應用迅速調整方向,基本消除了物體質量過大帶來的慣性影響,而且小車在實際運行中通過PID算法[1]達到平穩。噴繪機的噴繪軌道是帶光柵的,小車實際運行過程中接收光柵編碼器的位置信號,從而計算小車的位置和運動速度。由于機械、系統成本、復雜性、實驗環境等多方面限制,本設計系統沒有真正采用噴繪系統的小車作為研究對象,但為了說明和解決實際問題,本設計系統采用同等系統的等效法進行實驗。設計系統等效法如下:在電機上固定噴頭和小車同等重量的物體(相當于小車攜帶噴頭的運動系統),并在物體上綁定多圈可調電位器(相當于光柵編碼器來傳送位置信號),電位器上綁定一定質量的擺,擺偏移設定點(相當于小車系統的原點)的角度記作位置(相當于小車偏移位置),通過PID算法調節擺的占空比(相當于小車的速度),擺在偏移點左右轉動時瞬間改變電機的方向(相當于小車方向調整)。通過系統等效法驗證了此設計方法在噴繪系統的實用性和可行性。

2 基于系統的硬件設計

001.jpg

002.jpg

  圖1、2為控制系統硬件結構架構,其中圖1是系統硬件的總體架構,圖2是電機的驅動電路。主控系統選取的是STM32系列的STM32F103RBT6,選此控制系統是因為主控不但使用方便、成本較低、通過高級定時器編程設計直接實現電機驅動的死區設置,并可適當地更改死區時間,而且普通定時器也具有編碼功能,可直接應用在噴繪機控制系統中的光柵編碼器,從而正交采集光柵信號檢測小車[2]的運行位置。PC與STM32主控交互,可通過J-Link向主控中的Flash下載程序或通過PC的串口工具接收單片機發送的信息等。設計中選取STM32為主控,選取支持死區模式的TIM1定時器的PWM輸出供給L6203信號。主控中集成的AD主要是為了采樣搖擺偏移原點的位置(相當于小車偏移位置),主控中的DMA主要是為了快速傳遞AD采樣信息。為實現嵌入式經典理論中前后臺系統設計,采用中斷方式(NVIC)來處理任務。主控中的RCC為系統需要的時鐘配置;GPIO為需要的引腳配置,既包括AD引腳的采樣輸入引腳,又包括定時器的PWM輸出引腳等;UART接口通過串口線和PC連接來顯示信息;Tim4定時顯示處理向PC發送電機的狀態信息;SysTick定時中斷處理不同角度下通過PID調整的占空比任務。

  L6230電機的驅動模塊是手動焊接且通過測試可正常工作的。之所以選擇以L6203為主芯片模塊,是因為此模塊可以提供最大電流4 A、最大電壓48 V,以便可以提供搖擺足夠大的速度,來觀察高速運動下通過設置死區能否克服物體由于質量大帶來的難以剎車問題,從而驗證此設計系統在噴繪領域的實用性。主控和L6203跳線時,為保護主控系統又要滿足主控和電機模塊的對地接入,L6203模塊在接入時的GND引腳先跳線到SEMSE引腳,然后再跳線到L6203 GND引腳,再接入到主控STM32的GND。此方法的主要作用是當系統中電流過大時,電流只會貫穿L6203,不會燒壞STM32主控,對主控起到保護作用。L6203的IN1和IN2為兩路PWM輸入,Vs和SEMSE接入穩壓電源的正負極,EN為主控提供使能信號,OUT1和OUT2供給普通直流電機的電壓。

3 基于系統的軟件設計

  整個軟件架構分別對串行通信、高級定時器、AD角度采樣、PID算法設計、主控狀態機切換等進行設計與研究,最后借助PC上的串口調試器人機交互來設置采樣位置和檢測系統的執行狀態,從而證明系統可行性。

  3.1 軟件中狀態機切換

003.jpg


  圖3為控制系統中狀態機間的切換。程序設計思想借助于嵌入式實時操作系統提出的前后臺系統理論。為避免后臺系統打斷前臺系統對任務的處理有影響,任務做在后臺中斷里,前臺的While()死循環(LOOP狀態)中沒有任務,后臺通過中斷信號來告知處理器,從而刺激中斷的發生。從狀態機的切換圖可以看出,INIT狀態是系統初始化過程,主要包括主控的定時器、輸入輸出引腳、AD以及DMA等時鐘初始化,定時器、AD轉化以及串口的輸入輸出引腳初始化,定時器、DMA、系統定時中斷的初始化以及DMA傳輸設置初始化。初始化時設置的PC.4(GPIO_Mode_AIN模式)即模擬輸入模式,當PC.4引腳的信號發生變化時,即位置傳感器傳入當前位置后進入ADC狀態。為提高AD轉化速度和程序處理能力,DMA初始化時借助DMA1的第12通道,直接把AD配置成從ADC1->DR的地址傳送到ad_sm地址,此時為DMA狀態。傳輸完數值后進入SMO狀態,此狀態下任務對傳遞的ad_sm做平滑處理,平滑處理次數越多值越精確,此處做了8次平滑處理。選擇8次處理,首先是因為經過實際應用知平滑處理過的AD數值誤差精度已達要求。其次,做8次平滑處理只需在數值累加時右移3位、結果中最后左移3位,相比于復雜的乘除運算,左右移操作不會占處理器太多處理時間,一定程度上提高了系統的效率,,否則需乘除法和借助浮點庫,加大了主控需求,給主控帶來了難度和挑戰。最后在SMO狀態(DMA中斷的處理程序)輸出處理后的位置采樣AD值ad_sm_new,并將此處的ad_sm_new設置為全局變量數據共享即可進入到Verify_Keep狀態。TIM4狀態中定時器設置為1 s中斷的方式采集ad_sm_new并通過串口發送給上位機,通過串口調試器顯示給程序員調試。為滿足調整的精度要求,系統初始化時設置系統定時器(滴答定時器),程序運行后處于Sys狀態,每10 ?滋s產生系統定時中斷對當前位置采集到的AD值(即ad_sm_new),根據當時的實際情形進行PID調試或PI調試狀態后進入PWM狀態,輸出調整PWM占空比(速度)。采集到的位置要改變方向時(即到達一方向的終點時,在Verify_Keep狀態下的判斷),進行Deal2處理進入Die狀態。由于在改變方向時直流電機不能立刻停下來改變方向,每次都是在原始的方向減小到0然后再改變方向,這種情況不滿足實際的工作狀態。此狀態下通過初始化時設置的高級定時器,設置死區加以控制小車方向的改變。控制系統需要更改位置初始點設置以及系統定時中斷時間等參數時,通過按鍵中斷促使發生,進入到Key狀態,此狀態下有相應的消抖處理,一旦確認特定的按鍵按下則進入到Change狀態,通過串口顯示信息提示來更改初始點位置以及系統中斷時間等參數。

  3.2 系統中PID算法的應用

004.jpg

  圖4為PID算法在程序中的應用。從程序框圖可知,在初始點處設Uk=0,每10 ?滋s后進入系統中斷采集位置AD值,然后計算出偏差err。若err大于設定的最大偏差,則需進行比例、積分、微分共同調節;若小于設定偏差,則只需比例、積分調節,最后通過偏差數值乘以設定的比例值算出需要的Templ,并把Uk進行累積(最后的Uk為TIM1定時器需要裝載的值)來更改占空比。若求出的偏差err>0則正向輸出PWM波形,否則反向輸出。

  PID程序設計重要的是調節適當的比例、積分、微分系數,本系統在PID調節過程中首先把微分、積分系數設為0,使之成為純比例調節。調節比例系數Kp由0增大,直至出現震蕩后,減小Kp使震蕩消失后記此比例系數Kp。比例系數確定后調節積分系數Ki,積分系數的時間常數設為較大的Ti,然后為較小Ti使之出現振蕩,然后再反過來增加Ti使振蕩消失后記此Ki。最后在微分調節時先觀察,若發現控制有明顯的滯后時,需對Kd進行調節到合適,否則不需調節Kd。通過此調節過程可知PID算法在此控制系統的簡單性和實用性。

  3.3 高級定時器在程序中的應用設置

005.jpg

  主控中的高級定時器TIM1能夠輸出兩路互補的PWM信號并能瞬時地關斷和接通,同時設置定時器中的CCxE和CCxNE位插入死區。設置適當的插入死區時間可以瞬間地調整搖擺(相當于噴繪機中的小車)的方向,不會因為慣性太大而難以剎車。設置時定時器的PA9和PB14引腳對應到OCx和OCxN。庫函數通過設置TIM_BDTRInitStructure.TIM_DeadTime值來改變插入的死區時間。系統上電初期,TIM1_BDTR寄存器中的MOE低即剎車功能禁止。方向調整需要更改時,調整TIM1_BDTR寄存器BKE位來使能剎車功能。當不需要調整方向而在一個方向上平穩運行時,通過位置檢測來調整需要的占空比。圖5為系統剎車時序圖,是搖擺調整方向時通過示波器測出的。圖中1通道引入的是定時器1的PA9引腳,2互補通道引入的是定時器1 PB14引腳,可看出兩條豎線間是插入的死區時間,從右邊黑圈內讀出兩豎線間的時間為300 ?滋s與高級定時器的設置相吻合。經實際操作驗證,此系統在此死區時間以及互補PWM信號設置下可瞬時改變方向,基本消除了機械上慣性帶來的干擾。

4 系統的測試

  結合系統總體架構的軟件和硬件平臺以及過程方法步驟的闡述,最后測試結果如圖6、圖7所示。其中圖6顯示了運動過程中的位置采樣信息,從圖可知,在COM1下、9 600 b/s傳輸率、8個數據位、1個停止位、無奇偶校驗下,第一時刻采集到的位置值為198。圖7是PID在此位置調試下的示波器截圖,顯示了此位置下通過PID調節后輸出的占空比PWM波形。從截圖黑圈中可看出,在平穩狀態下運行時的頻率為20 kHz,占空比為28%,滿足搖擺平穩的運行狀態與實際的設置相吻合。結合圖5、圖6、圖7可看出搖擺在調整方向時的剎車以及PID在搖擺平穩狀態下運行的可行性和實用性,證明此設計系統正確,可投放到應用領域。

5 結論

  隨著噴繪技術發展,對噴繪機中小車控制系統要求越來越高。本設計從簡單、方便、實用性考慮,將STM32作為主控制平臺、L6203作為電機驅動,系統結合軟件設計出噴繪機中小車的控制系統。通過實踐和理論研究證明此方案可行,系統不僅簡捷、方便,而且更改容易,且執行過程中一定程度上提高了系統的效率并解決了一定技術難題,達到了理想的預期效果。但此設計控制系統沒能真正地面向噴繪機中小車系統,只是采取了系統等效法進行了演示,一定還有不少缺陷和不足,需以后加以彌補和改正。也希望將來此設計系統可廣泛應用到噴繪機小車的控制系統中。

  參考文獻

  [1] 李博,馬訓鳴,霍建鋒.基于PID的變量馬達恒速控制系統研究[J].西安工程大學學報,2014,27(2):231-233.

  [2] 劉晉,劉卓.USB接口在噴繪機中的應用[J].航空計算技術,2007,37(2):62-65.


此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
国产乱人伦精品一区二区| 亚洲国产精品久久久久婷婷老年 | 欧美大成色www永久网站婷| 久久久噜噜噜久久狠狠50岁| 欧美有码在线视频| 欧美在线黄色| 久久精品国产99精品国产亚洲性色| 香蕉久久精品日日躁夜夜躁| 亚洲男人第一网站| 亚洲在线视频一区| 亚洲欧美另类在线| 欧美一区二区三区四区在线观看地址| 亚洲欧美久久| 亚久久调教视频| 欧美在线高清| 久久久久久久性| 久久亚洲视频| 欧美fxxxxxx另类| 欧美精品一区二区蜜臀亚洲| 欧美日韩国产另类不卡| 欧美四级在线观看| 国产精品私拍pans大尺度在线| 国产精品永久免费在线| 国产一区二区av| 一区二区三区在线看| 在线成人av网站| 亚洲人屁股眼子交8| 日韩亚洲欧美一区| 亚洲视屏在线播放| 午夜精品福利一区二区三区av| 小嫩嫩精品导航| 亚洲第一区在线观看| 亚洲精品一区二区三区樱花| 一区二区欧美视频| 性色av香蕉一区二区| 久久精品国产精品亚洲| 久久综合久久综合久久| 欧美精品在线观看播放| 国产精品日韩欧美一区二区三区| 国产视频在线观看一区| 在线观看欧美日本| 日韩亚洲在线| 亚洲伦理自拍| 一区三区视频| 亚洲欧洲日韩在线| 亚洲视频久久| 欧美在线视频免费观看| 亚洲精品视频啊美女在线直播| 亚洲午夜精品久久久久久浪潮 | 国产日韩精品在线| 国产一区二区三区在线观看精品| 永久免费视频成人| 一区二区动漫| 久久se精品一区二区| 99亚洲一区二区| 欧美一区国产一区| 欧美大色视频| 国产精品亚洲产品| 亚洲黄色精品| 亚洲欧美日韩国产中文| 亚洲精品三级| 欧美亚洲在线观看| 欧美99久久| 国产精品一区二区三区观看| 亚洲福利视频网站| 亚洲免费视频在线观看| 亚洲精品国产品国语在线app| 午夜精品免费在线| 欧美黄色一区| 国产在线拍揄自揄视频不卡99| 亚洲精品免费电影| 久久国产天堂福利天堂| 亚洲女人天堂av| 免费av成人在线| 国产欧美日韩综合精品二区| 亚洲激情另类| 久久精品日产第一区二区| 亚洲小视频在线观看| 另类欧美日韩国产在线| 国产精品永久免费| 一本大道久久a久久精二百| 久久精品国产一区二区三| 亚洲欧美日韩国产精品| 欧美成人自拍视频| 国产有码在线一区二区视频| 一区二区三区国产在线| 亚洲国产欧美一区二区三区同亚洲| 亚洲欧美在线免费| 欧美日韩一区二区三区在线观看免| 一区二区久久久久| 久久综合久色欧美综合狠狠| 欧美偷拍另类| 亚洲日本成人在线观看| 亚洲福利视频网站| 久久国产免费看| 国产精品女主播在线观看| 亚洲精品系列| 亚洲精选视频在线| 久久一综合视频| 国产日韩欧美视频在线| 在线一区亚洲| 一区二区三区四区蜜桃| 欧美α欧美αv大片| 国产一区av在线| 小处雏高清一区二区三区| 亚洲中字黄色| 国产精品www.| 亚洲色无码播放| 亚洲永久免费av| 欧美日韩精品二区| 亚洲欧洲一区二区三区| 亚洲乱码久久| 欧美激情女人20p| 亚洲第一页在线| 亚洲国产精品一区在线观看不卡| 久久狠狠亚洲综合| 国产视频在线观看一区二区三区| 亚洲欧美国产高清| 欧美诱惑福利视频| 国产午夜精品理论片a级大结局| 午夜精品视频网站| 久久精品123| 国模一区二区三区| 亚洲高清激情| 免费观看成人鲁鲁鲁鲁鲁视频| 一区二区三区无毛| 91久久精品日日躁夜夜躁欧美| 久久一二三国产| 亚洲国产经典视频| 一本一道久久综合狠狠老精东影业 | 久久狠狠亚洲综合| 国外成人在线视频| 亚洲第一在线综合在线| 蜜桃久久精品一区二区| 亚洲黄色大片| 中文av一区二区| 国产精品美女久久久久av超清| 亚洲一区三区在线观看| 欧美专区亚洲专区| 黄色成人在线免费| 日韩一级片网址| 国产精品成人一区| 午夜在线视频一区二区区别| 久久久久女教师免费一区| 揄拍成人国产精品视频| 91久久国产自产拍夜夜嗨| 欧美精品一区视频| 在线视频一区二区| 久久国产精品久久久久久久久久| 禁久久精品乱码| 99精品99久久久久久宅男| 国产精品成人一区| 欧美在线观看一区二区| 欧美成人亚洲成人| 国产精品99久久久久久久女警 | 国产日韩在线一区| 亚洲国产精品成人va在线观看| 欧美久久精品午夜青青大伊人| 99精品视频免费全部在线| 午夜久久一区| 在线高清一区| 亚洲夜晚福利在线观看| 国产视频一区在线| 91久久精品日日躁夜夜躁国产| 欧美日韩国产综合视频在线| 亚洲欧美在线免费观看| 美日韩精品免费观看视频| 一本到12不卡视频在线dvd| 亚洲视频在线观看视频| 亚洲精品网站在线播放gif| 午夜视频在线观看一区| 激情综合色综合久久| 一区二区三区免费在线观看| 国产精品免费视频xxxx| 91久久在线观看| 国产精品久久久久久久午夜片| 亚洲成人在线免费| 亚洲国产免费看| 国产精品久久久久影院亚瑟| 亚洲二区视频| 欧美性生交xxxxx久久久| 亚洲高清自拍| 国产精品电影网站| 亚洲精品视频中文字幕| 国产欧美日韩另类视频免费观看| 亚洲精品国产系列| 国产免费亚洲高清| 亚洲婷婷综合久久一本伊一区| 一区二区在线观看视频| 亚洲女人天堂成人av在线| 亚洲高清自拍| 久久精品二区三区| 99精品国产高清一区二区| 久久躁日日躁aaaaxxxx| 亚洲欧美国产va在线影院| 欧美日韩成人综合| 亚洲欧洲一区| 国内精品久久久久影院 日本资源| 亚洲一区二区在| 亚洲国产精品一区二区第一页|