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
恐怖犯罪刑事訴訟程序的完善
主站蜘蛛池模板: 亚洲国内精品自在自线官| 一级在线毛片| 欧美成人一级| 国产日韩欧美精品区性色| 色婷婷电影网| 久久精品免费看一| 午夜啪啪福利| 精品国产成人三级在线观看| 国产一区成人| 国产精品亚洲а∨天堂免下载| 日韩成人高清无码| www欧美在线观看| 91久久天天躁狠狠躁夜夜| 色综合婷婷| 又黄又爽视频好爽视频| a级毛片在线免费观看| 日韩色图区| 久久香蕉国产线看观看精品蕉| 成人永久免费A∨一级在线播放| 无码AV动漫| 综合天天色| 国产国产人成免费视频77777| 2022精品国偷自产免费观看| 香蕉综合在线视频91| 欧美在线观看不卡| 国产免费福利网站| 欧美午夜在线播放| 97国产在线播放| 91精品亚洲| 四虎影视库国产精品一区| 在线中文字幕网| 日韩在线视频网站| 在线观看国产小视频| 国产午夜小视频| 伊人激情久久综合中文字幕| 国产欧美性爱网| www欧美在线观看| 国产精品.com| 国产成人av一区二区三区| 国产亚洲精久久久久久无码AV| 欧美亚洲日韩不卡在线在线观看| 又黄又爽视频好爽视频| 天天躁狠狠躁| 3344在线观看无码| 99视频精品全国免费品| 亚洲天堂视频在线免费观看| 天堂岛国av无码免费无禁网站| 国产亚洲精品97AA片在线播放| 久久久久久久久久国产精品| 88av在线| 91口爆吞精国产对白第三集| 精品欧美日韩国产日漫一区不卡| 国产精品99在线观看| 亚洲人成影院在线观看| 亚洲成a人片| 一级在线毛片| 日本欧美一二三区色视频| www亚洲精品| 国产在线精品香蕉麻豆| 高清无码一本到东京热| 国产小视频a在线观看| 欧美一级在线看| 伊人色在线视频| 欧美一级在线看| 欧美一级片在线| 免费一级毛片在线观看| 亚洲成人精品久久| 国产18在线| 国产欧美视频综合二区| 免费一级大毛片a一观看不卡| 亚洲国产理论片在线播放| 国产精品网址在线观看你懂的| 国产成人精品高清在线| 99视频在线免费观看| 午夜欧美理论2019理论| 国产精品网址在线观看你懂的| 国产国产人成免费视频77777| 亚洲成人播放| 国产地址二永久伊甸园| 91青青草视频| 亚洲免费毛片| 视频二区亚洲精品|