《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于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亚洲国产精品_日韩亚洲一区二区
欧美刺激性大交免费视频| 狠狠综合久久av一区二区老牛| 亚洲欧美日韩在线不卡| 99ri日韩精品视频| 亚洲人成在线观看| 久久精品99无色码中文字幕| 性欧美激情精品| 午夜精品美女自拍福到在线| 亚洲性夜色噜噜噜7777| 亚洲视频在线观看三级| 亚洲天堂偷拍| 亚洲欧美日韩一区二区三区在线观看| 亚洲天天影视| 亚洲欧美日本精品| 亚洲男女毛片无遮挡| 午夜一区在线| 欧美一区二区视频免费观看| 久久av免费一区| 亚洲国产日韩欧美一区二区三区| 亚洲国产精品久久人人爱蜜臀| 亚洲国产精品成人一区二区| 亚洲日本中文字幕免费在线不卡| 亚洲三级观看| 99精品国产在热久久| 亚洲一区二区免费视频| 亚洲视频播放| 校园春色国产精品| 久久精品国产亚洲aⅴ| 久久综合九色综合欧美就去吻 | 国产日韩欧美高清免费| 国产在线拍揄自揄视频不卡99| 国产综合香蕉五月婷在线| 一区二区三区在线观看欧美| 亚洲国产成人精品女人久久久 | 一区二区三区视频观看| 亚洲欧洲av一区二区三区久久| 亚洲第一中文字幕在线观看| 亚洲日本免费电影| 亚洲一本大道在线| 久久黄色小说| 欧美a级片网站| 欧美视频在线免费| 国产日本欧美一区二区| 亚洲国产日韩在线| 亚洲一级免费视频| 亚洲国产欧美一区二区三区同亚洲 | 亚洲综合色激情五月| 欧美在线首页| 夜夜嗨av一区二区三区四季av | 国产亚洲欧美另类一区二区三区| 亚洲动漫精品| 亚洲手机在线| 亚洲国产成人午夜在线一区| 中文av字幕一区| 久久精品女人的天堂av| 欧美精品一卡| 国产日韩在线一区| 亚洲精品日日夜夜| 亚洲欧美区自拍先锋| 亚洲精品乱码久久久久久按摩观| 亚洲欧美日本精品| 免费日韩av片| 国产毛片精品视频| 亚洲精品美女91| 欧美综合激情网| 中文一区二区在线观看| 久久综合九色综合网站| 国产精品久久久久99| 永久555www成人免费| 亚洲在线播放电影| 日韩视频一区| 久久综合国产精品台湾中文娱乐网| 欧美偷拍一区二区| 亚洲国产精品va| 午夜免费电影一区在线观看| 一区二区三区高清| 久久久久久久性| 国产精品理论片| 亚洲日本理论电影| 亚洲成人在线视频网站| 国产精品亚洲成人| 亚洲国产日韩欧美| 欧美在线不卡| 亚洲欧美日韩另类| 欧美精品一区在线播放| 国内精品视频在线播放| 在线视频你懂得一区 | 亚洲国产精品va在线看黑人| 亚洲男女毛片无遮挡| 欧美精品午夜| 亚洲大胆人体在线| 性欧美大战久久久久久久久| 99视频精品全国免费| 久久综合伊人77777麻豆| 国产精品婷婷| 亚洲天堂av在线免费观看| 亚洲精选一区二区| 久久中文在线| 国产揄拍国内精品对白| 亚洲欧美成人在线| 亚洲在线免费观看| 欧美日韩精品免费观看视频完整 | 免费成人在线观看视频| 国产一区二区三区最好精华液| 亚洲影院色无极综合| 亚洲在线成人精品| 欧美日韩一区二区在线| 91久久在线观看| 亚洲激情午夜| 欧美gay视频激情| 在线观看欧美激情| 亚洲动漫精品| 麻豆精品在线视频| 一区免费视频| 亚洲激情欧美激情| 欧美大尺度在线| 亚洲高清在线观看一区| 亚洲欧洲一区二区三区久久| 蜜臀av性久久久久蜜臀aⅴ四虎 | 亚洲国产精品专区久久| 亚洲精品日韩欧美| 欧美福利在线观看| 亚洲黄色成人| aⅴ色国产欧美| 欧美日韩一区二区国产| 一区二区三区免费看| 亚洲无限av看| 国产精品久久亚洲7777| 亚洲欧美清纯在线制服| 久久久99久久精品女同性| 国内精品久久久久久| 亚洲电影专区| 欧美精品v国产精品v日韩精品| 亚洲激情电影中文字幕| 一本一道久久综合狠狠老精东影业| 欧美激情一区二区三区成人| 日韩视频免费| 午夜精品久久99蜜桃的功能介绍| 国产欧美一区二区视频| 久久高清国产| 欧美大秀在线观看| 一区二区电影免费在线观看| 亚洲欧美www| 国产一区二区三区黄| 亚洲国产专区| 欧美精品日韩综合在线| 中文在线资源观看网站视频免费不卡| 性欧美18~19sex高清播放| 国产一区二区精品久久| 亚洲日本欧美日韩高观看| 欧美日韩国产综合新一区| 亚洲网站啪啪| 久久综合99re88久久爱| 亚洲精品中文字| 亚洲欧美日韩专区| 狠狠色丁香久久婷婷综合_中| 亚洲激精日韩激精欧美精品| 欧美日韩精品免费观看| 亚洲欧美日韩成人| 美女任你摸久久| 夜夜嗨av色综合久久久综合网| 性欧美1819性猛交| 在线不卡欧美| 亚洲一区二区三区激情| 国产亚洲精品一区二555| 亚洲人成在线观看网站高清| 国产精品白丝jk黑袜喷水| 欧美一区影院| 欧美日韩国产一区二区三区地区| 亚洲欧美日韩精品综合在线观看 | 91久久综合亚洲鲁鲁五月天| 亚洲欧美激情一区| 亚洲成人在线观看视频| 亚洲在线免费视频| 亚洲大胆人体视频| 欧美一区二区免费视频| 1024成人网色www| 性色av香蕉一区二区| 亚洲丶国产丶欧美一区二区三区| 亚洲主播在线播放| 在线日韩一区二区| 亚洲欧美日韩国产一区二区三区| 在线精品视频一区二区| 亚洲免费一在线| 在线观看亚洲视频| 欧美亚洲三级| 日韩网站在线观看| 久久婷婷国产综合精品青草| 99伊人成综合| 免费亚洲婷婷| 午夜伦理片一区| 欧美视频亚洲视频| 91久久久一线二线三线品牌| 国产美女在线精品免费观看| 日韩一级视频免费观看在线| 精品不卡视频| 久久精品30| 宅男噜噜噜66一区二区| 免费国产自线拍一欧美视频| 性欧美在线看片a免费观看|