《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 基于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亚洲国产精品_日韩亚洲一区二区
亚洲一区二区三区涩| 久久精品人人做人人爽| 国产日韩在线亚洲字幕中文| 免费观看在线综合| 欧美一区二区大片| 中日韩高清电影网| 亚洲人成亚洲人成在线观看图片| 亚洲自拍偷拍网址| 亚洲最黄网站| 亚洲欧洲一级| 尤物99国产成人精品视频| 国产精品理论片| 欧美日韩免费看| 欧美黄色一区| 另类专区欧美制服同性| 欧美在线在线| 欧美有码视频| 欧美夜福利tv在线| 香蕉久久夜色精品国产| 亚洲免费在线看| 亚洲夜间福利| 一区二区欧美激情| 日韩视频中午一区| 亚洲免费播放| 亚洲美女中文字幕| 亚洲人体大胆视频| 亚洲国产婷婷综合在线精品 | 日韩一二三在线视频播| 最新热久久免费视频| 亚洲国产精品久久久久婷婷884| 香蕉久久a毛片| 亚洲一区二区三| 亚洲一区二区三区欧美| 亚洲小视频在线| 亚洲综合色婷婷| 亚洲女人av| 午夜精品一区二区三区电影天堂| 亚洲淫性视频| 午夜精品福利一区二区蜜股av| 亚洲在线免费| 新狼窝色av性久久久久久| 午夜在线一区| 欧美一区二区成人| 久久精品国产精品| 亚洲国产福利在线| 亚洲破处大片| 99国产精品| 亚洲天堂网站在线观看视频| 亚洲天堂免费观看| 性视频1819p久久| 欧美伊人久久久久久午夜久久久久| 欧美在线在线| 久久综合九色综合网站| 免费一级欧美在线大片| 欧美大片网址| 欧美日韩在线视频观看| 国产精品久久久久久久9999| 国产欧美在线观看一区| 国产一区二区三区免费不卡| 黄色成人av| 91久久综合亚洲鲁鲁五月天| 夜夜嗨av色一区二区不卡| 亚洲天堂av在线免费| 性视频1819p久久| 91久久精品一区二区别| 性欧美暴力猛交另类hd| 亚洲国产精品成人一区二区| 99国产成+人+综合+亚洲欧美| 亚洲一区二区在线视频| 亚洲第一天堂无码专区| 日韩一级在线| 欧美在线精品免播放器视频| 久久免费的精品国产v∧| 欧美激情片在线观看| 国产精品国产三级国产普通话蜜臀 | 亚洲欧美色一区| 亚洲国产成人在线| 一区二区三区日韩| 久久精品中文字幕免费mv| 欧美刺激午夜性久久久久久久| 欧美私人网站| 一色屋精品视频在线看| 一区二区三区 在线观看视频| 欧美在线短视频| 999在线观看精品免费不卡网站| 一区二区三区国产在线观看| 午夜视频一区在线观看| 久久久久中文| 欧美日韩一区二区精品| 国产欧美一区二区精品性| 亚洲国产经典视频| 午夜精品久久久久久久99黑人| 亚洲日韩欧美一区二区在线| 亚洲女人天堂成人av在线| 免播放器亚洲一区| 国产精品一级二级三级| 亚洲全部视频| 欧美在线免费观看| 亚洲一区二区动漫| 免费在线国产精品| 国产日韩欧美日韩| 日韩一级黄色av| 91久久国产综合久久91精品网站| 亚洲男人第一网站| 欧美高清视频在线播放| 国产一区二区精品| 一区二区三区精品| 亚洲毛片一区二区| 久久亚洲欧美国产精品乐播| 欧美先锋影音| 91久久精品视频| 欧美在线观看你懂的| 亚洲在线中文字幕| 欧美极品色图| 国内精品久久久久久久影视蜜臀| 一区二区三区久久精品| 亚洲精选久久| 免费不卡在线观看av| 国产私拍一区| 亚洲男人第一av网站| 亚洲香蕉伊综合在人在线视看| 美女网站久久| 国产曰批免费观看久久久| 亚洲一区影院| 亚洲欧美日本国产专区一区| 欧美日韩p片| 在线不卡中文字幕| 久久精品日产第一区二区三区| 欧美亚洲视频在线看网址| 欧美日韩国内| 亚洲人成在线免费观看| 亚洲欧洲一二三| 免费看亚洲片| 黄网站免费久久| 久久狠狠久久综合桃花| 久久久久久午夜| 国产精品二区三区四区| 一本不卡影院| 制服诱惑一区二区| 欧美日韩一区二区视频在线观看| 亚洲国产一区二区三区高清| 亚洲国产精品国自产拍av秋霞| 小处雏高清一区二区三区| 国产精品久99| 亚洲欧美成人一区二区在线电影| 亚洲欧美国产三级| 欧美午夜激情小视频| 日韩一区二区精品视频| 在线亚洲欧美视频| 欧美黄色视屏| 亚洲精品一区二区三区四区高清| 亚洲第一在线综合网站| 看欧美日韩国产| 一色屋精品视频免费看| 亚洲国产欧美一区二区三区同亚洲| 久久天天躁狠狠躁夜夜av| 国内精品写真在线观看| 亚洲第一成人在线| 美日韩免费视频| 91久久精品一区二区别| 亚洲视频播放| 国产精品色网| 久久av一区二区三区| 久久综合伊人77777| 影音先锋成人资源站| 亚洲六月丁香色婷婷综合久久| 欧美精品导航| 夜久久久久久| 欧美一区网站| 一区二区三区在线免费视频 | 欧美一区二区三区四区在线观看| 午夜精品福利电影| 国产一区白浆| 亚洲国产美女| 免费日本视频一区| 99视频在线精品国自产拍免费观看| 亚洲免费视频观看| 国产色爱av资源综合区| 亚洲福利免费| 欧美日本在线播放| 亚洲欧美日韩在线一区| 久久免费黄色| 亚洲人成绝费网站色www| 亚洲在线一区二区三区| 国内欧美视频一区二区| 日韩视频在线一区二区三区| 国产精品狼人久久影院观看方式| 欧美主播一区二区三区美女 久久精品人 | 久久九九国产精品怡红院| 亚洲第一网站免费视频| 翔田千里一区二区| 亚洲精品中文字幕有码专区| 久久久久久一区| 在线中文字幕一区| 欧美国产日韩精品| 亚洲成色www8888| 国产乱码精品一区二区三区忘忧草| 亚洲美女色禁图| 伊人久久亚洲热| 久久精品视频va|