999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于dsPIC30F4012的電機控制器與上位機數據通訊的實現

2012-07-20 04:00:20張松松李聲晉
微特電機 2012年2期
關鍵詞:程序

張松松,盧 剛,李聲晉

(西北工業大學,陜西西安710072)

0 引 言

無刷直流電動機與電子技術、微電子技術、數字技術、自控技術以及稀土永磁材料的發展密切相關,因其擁有優良的性能使得無刷直流電動機在某些領域取代了有刷電機。本文采用的dsPIC30F4012是由Microchip公司專為電機高速控制而設計的16位數字控制芯片,已有多篇論文對該芯片以及由其做成的無刷直流電動機控制器進行了介紹,于此不做詳述。本文研究基于dsPIC30F4012的無刷直流電動機控制器與上位機之間的數據通訊的實現方式,研究并設計了上位機程序和與上位機程序相對應的電機控制程序,實驗結果驗證了上位機與電機控制器的數據通訊符合本文的設計要求。

1 上位機與電機控制器之間的數據通訊原理

上位機與電機控制器之間的數據通訊原理如圖1所示。上位機將要發送的指令數據等通過數據包的形式發送到下位機,下位機接收到數據包之后,按照事先規定好的通訊協議對其進行解包,由上位機向電機控制器發送數據完成;下位機將接收到指令數據也通過數據包的形式發送至上位機,上位機接收到數據包之后對其進行解包,由電機控制器向上位機上傳數據完成,這就是上位機與電機控制器之間的數據通訊原理。本文所指的上位機為計算機,上位機與電機控制器之間是通過UART串行數據通訊實現的。電機控制器通過TTL電平轉換電路轉換成RS232電平與計算機的COM口連接。

圖1 上位機與電機控制器之間的數據通訊原理框架

為確保接收到的數據與發送的數據一致,在數據通訊的過程中加入了包頭、CRC校驗算法,因此通訊的數據包包含的數據有:包頭soi、命令描述符command、數據高8位 h8、數據低8位l8、CRC校驗值chksum。包頭的作用是開始接收數據的標志,CRC校驗值是為了確保發送的數據的正確性,包頭和CRC校驗值共同保證了整個數據包發送與接收的正確性,以避免數據紊亂。命令描述符使可以發送的數據類型可以有很多種,比如速度、PID計算的系數等,由此可以制定一個上位機與電機控制器之間的通訊協議。數據高8位、數據低8位為具體的數據,其含義與命令描述符有關,比如命令描述符為速度,數據則為速度值。

2 上位機程序

上位機的程序是通過LabVIEW8.6編寫,其功能主要實現數據打包發送至電機控制器與接收電機控制器發送來的數據并顯示,其程序可分為串口通訊設置、CRC校驗算法、數據打包發送、接收數據并處理。

(1)串口通訊設置

串口配置程序如圖2所示,使用LabVIEW8.6中內部自帶的VISA配置串口模塊來設置通訊方式。在本文中涉及到的主要包括端口選擇、波特率設定、奇偶校驗選擇、發送的數據長度以及停止位。

圖2 串口配置程序

(2)CRC校驗算法程序

在發送與接收過程中均用到了CRC校驗算法,因此將其做成了CRC校驗算法子VI,以方便使用。CRC校驗算法子VI的輸入為命令字符command與數據h8+l8,輸出為產生的 CRC校驗值chksum。CRC校驗算法程序流程如圖3所示。

圖3 CRC校驗算法流程

(3)數據打包發送

電機轉速由受PMM的占空比控制,控制占空比就相當于控制速度,因此本文在此發送的數據是占空比值,實現由上位機控制電機速度。在打包發送數據程序設計時一定要加上延遲,以避免下位機接收紊亂,其程序如圖4所示。發送的數據包為圖中的打包數據,數據包頭為0x55。

圖4 打包發送程序

(4)接收電機控制器發送的數據

因為一次只能接收8位二進制數據,因此整個數據包是通過五次循環完成的,故在接收時加延遲時間,以避免接收亂碼。其程序如圖5所示,從下位機接收到的數據包放在接收到的數組內,等待后續處理。

圖5 接收電機控制器發送的數據程序

本文中接收的數據包是上位機發送的數據包經下位機即電機控制器解包-打包-上傳之后的數據包,這兩個數據包應該是一致的,因經上位機程序解壓出來的占空比應一致,如不一致則說明上位機程序或者下位機程序錯誤,其解包處理程序如圖6所示。

圖6 解包處理程序

3 電機控制程序

電機控制器中的程序是用C語言編寫的,通過MPLAB ICD2仿真連接器下載至數字控制芯片dsPIC30F4012中。本文主要研究并設計了整個UART接收中斷函數,PWM中斷函數則是參考以往實驗程序稍加修改,整個電機控制程序流程如圖7所示。

圖7 電機控制程序流程

電機控制程序首先要對數字控制芯片dsPIC30F4012進行系統配置,然后對用到的UART、PWM模塊進行初始化配置,編寫PWM中斷函數和UART接收中斷函數,等上位機發送指令數據引起UART中斷事件,進入UART接收中斷函數,接收數據并解包,將收到的數據再打包上傳,執行完UART函數之后改變了程序中占空比的值,引起了PWM中斷事件,從而進入PWM中斷函數,對電機進行換相,實現電機轉速控制,執行完各中斷之后,程序進入主函數中的while循環,每隔一段時間,將看門狗清零,以防dsPIC30F4012進行復位。

本文中上位機與電機控制器之間的數據通訊是在UART中斷函數實現的,及數據包接收與發送均由UART中斷函數完成,UART接收中斷函數程序框架如圖8所示。在接收數據時,由于每次接收到的是8位二進制數,因此需要五次接收,需加延時程序,以免接收錯誤,接收到的數據臨時放在數組A[i]中。接收完數據后,進入數據解包程序,得出所發送的數據,在本文中為占空比值,將發送的占空比值賦給控制占空比的變量,改變電機轉速,之后進入數據上傳函數,把剛剛接收到的數據即占空比值打包上傳到上位機,最后清除UART接收中斷標志,退出UART接收中斷函數。

圖8 UART接收中斷函數

數據解包函數框架如圖9所示。首先判斷接收到的數據的包頭是不是預先規定的0x55,若不是則直接退出此函數。找到包頭后,然后將接收的命令描述符command與數據data送至CRC校驗算法函數,將產生的校驗值與上位機發送來的校驗值相比較,若一致,則將data值賦給占空比變量以控制電機轉速;若不一致則說明接收的數據有錯,不引起PWM中斷,直接退出。該函數中的CRC校驗算法函數與上位機中的CRC校驗算法流程一致,只是編寫語言不同,故于此不再詳述。

圖9 數據解包函數

數據上傳函數框架如圖10所示,分為數據打包與數據上傳兩部分。數據打包部分與上位機程序中數據打包發送類似,程序流程是一致的,所不同的是編寫語言。數據打包后放在一個數組B[j]里,分五次將該數據包上傳至上位機,中間的延時一定要與上位機的一致,否則會發生上位機接收紊亂。

圖10 數據上傳函數

在本文中,UART接收中斷函數為整個電機控制程序的核心設計,而PWM中斷函數則是參考以往程序,對其稍加修改揉進本程序中,已有論文對其進行闡述,在此不做詳細介紹。

4 實驗結果

通過MPLAB ICD2仿真連接器把電機控制程序下載至數字控制芯片,脫機運行,讓上位機程序也運行,由上位機向電機控制器發送數據即占空比值,然后再由電機控制器將發送的占空比值打包之后上傳至上位機,其實驗結果如圖11、圖12所示。

圖11為占空比值從100~300,即占空比從25%~75%由上位機發送至電機控制器的占空比曲線圖和由電機控制器上傳至上位機的占空比曲線圖。由圖可知,兩條曲線是一致的,放在一個圖中會重合,于是分開顯示。

圖11 發送與接收的占空比

圖12 占空比為67.5%時上位機顯示結果

圖12(a)是上位機發送的占空比值為270即占空比為67.5%時的上位機數據顯示結果,發送的數據包與接收的數據包是一致的,接收的占空比值也與發送的占空比一致。圖12(b)是上位機發送值電機控制器占空比為67.5%電機轉動時,由示波器測出的PMW輸出波形,將波形放大幾倍之后,算得其占空比約為68%,在誤差允許的范圍之內,與上位機發送的占空比是一致的。

圖11與圖12的實驗結果表明,本文實現了上位機與電機控制器的數據通訊,為后續工作打下了基礎。

5 結 語

本文給出了基于dsPIC30f4012控制的無刷直流電動機控制器與上位機數據通訊的上位機程序設計與電機控制程序中的UART接收中斷函數設計。每一步看似簡單,在實際程序研究設計中需經多次反復修改才能達到所要達到的目的。本文實現的上位機與下位機的數據通訊,為以后的速度計算、上傳以及PID閉環速度控制提供了基礎。

[1] 吳成東.LabVIEW虛擬儀器程序設計及應用[M].北京:人民郵電出版社,2008.

[2] 陳秀霞.輪式機器人用無刷直流電機控制系統設計[J].微控技術,2010,29(5):55 -59.

[3] 劉鵬.基于dsPIC30F4012的無刷直流電動機控制系統設計[J].微特電機,2009(10):43-45.

猜你喜歡
程序
給Windows添加程序快速切換欄
電腦愛好者(2020年6期)2020-05-26 09:27:33
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
基于VMM的程序行為異常檢測
偵查實驗批準程序初探
我國刑事速裁程序的構建
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 亚洲AV无码久久精品色欲| 人妻无码中文字幕第一区| 波多野结衣视频网站| 日本精品视频一区二区| 午夜视频日本| 国产二级毛片| 亚洲天堂久久新| 国产在线98福利播放视频免费| 国产精品成人一区二区| 一区二区三区四区精品视频| 五月天在线网站| 91年精品国产福利线观看久久| 欧美综合成人| 国产精品美乳| 国产网友愉拍精品| 精久久久久无码区中文字幕| 精品一区二区久久久久网站| 精品无码国产自产野外拍在线| 亚洲激情99| 色婷婷综合激情视频免费看| 亚洲第一中文字幕| 欧美激情视频二区三区| 成人小视频网| 99久久精品免费看国产电影| 免费在线a视频| 国产人碰人摸人爱免费视频| 亚洲成在线观看| 免费在线不卡视频| 欧美日韩高清在线| 人妻丰满熟妇啪啪| 久久久久久久蜜桃| 国产十八禁在线观看免费| 国产99视频精品免费视频7| 高清欧美性猛交XXXX黑人猛交 | 欧美在线天堂| a在线亚洲男人的天堂试看| 国产成人精彩在线视频50| 国产91无码福利在线| 久久久久亚洲AV成人人电影软件| 久久不卡精品| 很黄的网站在线观看| 久久久久无码国产精品不卡| 国产啪在线| 国产自在线拍| 日韩 欧美 小说 综合网 另类 | 国内熟女少妇一线天| 亚洲国产成人久久精品软件| 国产精品亚洲欧美日韩久久| 国产中文在线亚洲精品官网| 精品一区二区久久久久网站| 精品视频91| 亚洲国产精品无码AV| 免费一级全黄少妇性色生活片| 国产美女自慰在线观看| 免费国产高清视频| 亚洲国产成人精品一二区| 视频在线观看一区二区| 毛片久久久| 日韩中文无码av超清| 国产成人一级| 久久精品国产一区二区小说| 六月婷婷综合| 日韩精品欧美国产在线| 国产喷水视频| 67194亚洲无码| 亚卅精品无码久久毛片乌克兰 | 91在线国内在线播放老师| a级毛片免费网站| 亚洲精品免费网站| 国产在线精品人成导航| 丁香五月婷婷激情基地| 中文字幕免费在线视频| 国产成人精品在线| 免费一级毛片不卡在线播放| 国产激情无码一区二区APP | 成人免费视频一区二区三区| 亚洲国产精品无码AV| 欧美日韩午夜视频在线观看| 22sihu国产精品视频影视资讯| 呦视频在线一区二区三区| 国产一级妓女av网站| 欧美精品导航|