亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        支持Modbus RTU協(xié)議的步進電機控制器設(shè)計

        2012-03-17 07:21:02許家林樸仁官
        電子設(shè)計工程 2012年17期
        關(guān)鍵詞:數(shù)據(jù)模型串口繞組

        許家林,王 鶴,樸仁官

        (中國科學(xué)院 長春光學(xué)精密機械與物理研究所,吉林 長春 130000)

        步進電機由于其轉(zhuǎn)動的角度和其輸入驅(qū)動脈沖的個數(shù)成正比,可以使用開環(huán)控制來代替閉環(huán)控制,因此,在精度要求不高的運動控制系統(tǒng)中,在工業(yè)領(lǐng)域得到了大量應(yīng)用。特別在多自由度的設(shè)備中,步進電機的個數(shù)隨著自由度的增加而增加。隨著電機個數(shù)的增加,使用一個處理器來控制所有的電機已經(jīng)不能勝任。而通常需要遵循嚴格的時序要求的運動可能只有2~3個,這些有嚴格時序要求運動的控制必須使用1個處理器來實現(xiàn);而其他的運動沒有嚴格時序要求的運動,可以使用不同的處理器來控制。各個處理器之間的同步可以使用網(wǎng)絡(luò)總線進行通訊。

        基于Modbus RTU的電機控制系統(tǒng)在伺服系統(tǒng)中得到了應(yīng)用[1],一個較為簡單易實現(xiàn)該協(xié)議的網(wǎng)絡(luò)便是RS-485網(wǎng)絡(luò)。這是個主從式的網(wǎng)絡(luò)結(jié)構(gòu),使用一個主機多個從機。主機負責(zé)所有電機的管理,從機接收主機各種運動指令,并且執(zhí)行響應(yīng)的指令。根據(jù)實時性要求,從機處理器可以只控制一個電機,也可以控制多個電機。這種基于網(wǎng)絡(luò)的步進電機控制器,可以控制的電機數(shù)目由原理的幾個可以寬展到上百個,并且分模塊設(shè)計的設(shè)計方法也增加了系統(tǒng)的可靠性。

        文中設(shè)計了基于RS-485網(wǎng)絡(luò)的多步進電機控制系統(tǒng),系統(tǒng)中步進電機的驅(qū)動采用集成功率驅(qū)動器,使用STM32單片機作為步進電機的主控處理器,并且在STM32中實現(xiàn)了Modbus[2]協(xié)議。

        1 系統(tǒng)結(jié)構(gòu)

        基于RS-485網(wǎng)絡(luò)的多步進電機控制系統(tǒng)的結(jié)構(gòu)如圖1所示,在圖中,有一個主機多個從機,使用總線型的拓撲結(jié)構(gòu)將所有的主機、從機組成網(wǎng)絡(luò)。

        圖1 主從式RS-485網(wǎng)絡(luò)結(jié)構(gòu)Fig.1 Master-slave type RS-485 network structure

        在單個處理器構(gòu)成的從機單元中,根據(jù)需要嚴格聯(lián)動的步進電機的數(shù)量,需要設(shè)計單軸、雙軸和三軸的步進電機控制單元,這些控制單元在系統(tǒng)網(wǎng)絡(luò)中有各自的地址,并且有各自的Modbus RTU數(shù)據(jù)模型。

        一個三軸控制單元的結(jié)構(gòu)框圖如圖2所示,單片機負責(zé)零位,極限位置的處理,脈沖的發(fā)送和計數(shù)等,電機的驅(qū)動器負責(zé)接收單片機的脈沖信號、方向信號、細分信號等,控制電機的繞組流過的電流,控制電機進行正反轉(zhuǎn)。使用STM32的一個異步串口(UART)進行網(wǎng)絡(luò)通信,并使用SN75176A做電平轉(zhuǎn)換,同時使用一個單片機的一個IO口作為發(fā)送和接收的使能端口。

        圖2 三軸系統(tǒng)框圖Fig.2 Three-axis system diagram

        步進電機系統(tǒng)由于采用開環(huán)設(shè)計,必須要有零點檢測,否則系統(tǒng)在上電后不能找到系統(tǒng)的零點。也必須有兩個極限位置檢測以防止運動部件超出行程造成機械碰撞導(dǎo)致破壞。一個運動機構(gòu)在運動過程中達到這3個位置時,需要通過光電開關(guān)、機械行程開關(guān)等形式通知控制系統(tǒng),系統(tǒng)以中斷的形式進行管理。STM32F103的外部時間中斷源多達19個,可以方便地為每一個電機分配3個中斷源,提高了控制的可靠性。

        2 步進電機驅(qū)動

        步進電機的驅(qū)動方法包括高低壓驅(qū)動,斬波恒流驅(qū)動,調(diào)頻調(diào)壓[3-4]等方式,市場上目前有各種集成功率驅(qū)動器可供選擇。兩相步進電機的驅(qū)動芯片基本都是斬波恒流的方式。根據(jù)功率和電流的大小,可以使用的不同的驅(qū)動芯片,如Allegro MicroSystem公司的A3979[5]可以驅(qū)動2.5 A以下的兩相步進電機,東芝的THB6064H可以驅(qū)動4.5 A以下的兩相步進電機,如果需要更大的驅(qū)動電流,通常使用外置的MOSFET,如 Allegro MicroSystem 公司的 A3986[6],可以提供30~500W的功率,10 A以上的電流。

        使用集成功率驅(qū)動芯片驅(qū)動步進電機的關(guān)鍵點是步進電機實現(xiàn)恒流驅(qū)動的原理和細分技術(shù),以選取合適的參數(shù)來使電機穩(wěn)定可靠的運行。

        文中根據(jù)設(shè)計需要,使用A3979作為驅(qū)動,實現(xiàn)恒流的方式是固定關(guān)斷時間的PWM電流控制電路。其內(nèi)部使用兩個H橋路分別驅(qū)動步進電機的兩個繞組,并在下橋臂和地之間使用采樣電阻,采集流過繞組的電流,如圖3所示。

        兩相繞組中每一項電流的大小,和兩個參數(shù)有關(guān),一個參數(shù)是通過外部設(shè)定的參考電壓,這個參考電壓決定了在整個工作周期中,繞組中電流的最大值,最大值的大小為:

        另一個參數(shù)是電機每一步的細分數(shù)決定的,細分數(shù)決定了通過繞組電流占電流最大值的百分比。

        圖3 雙H橋驅(qū)動兩相步進電機的結(jié)構(gòu)Fig.3 System structure of 2-phase steppermotor drove by dual H-bridge

        當(dāng)電流值達到設(shè)定的百分比值后,開始衰減,衰減的模式有3種:快速衰減、慢速衰減和混合衰減,如圖4所示。固定關(guān)斷時間指的便是這里的衰減時間。衰減的方式不同是依靠H橋的MOS管開關(guān)來實現(xiàn)的。其中要設(shè)置的參數(shù)就是固定關(guān)斷時間。設(shè)置了關(guān)斷時間便可以根據(jù)衰減方式和電流的上升時間計算出MOS管的開關(guān)頻率。MOS管的開關(guān)頻率應(yīng)該避開機械系統(tǒng)的固有頻率,避免發(fā)生共振。使用慢速衰減時,PWM的頻率最高,使用快速衰減時,PWM的頻率最低。A3979的關(guān)斷時間為30~46 ns,加上電流的上升時間,PWM的頻率約為 12~25 kHz。

        步進電機轉(zhuǎn)動依靠脈沖驅(qū)動,單片機產(chǎn)生脈沖的方法是使用定時器來實現(xiàn),在定時中斷中翻轉(zhuǎn)IO口的電平,使用兩次中斷來產(chǎn)生一個脈沖。在程序中計算速度和位置時都要處理由此引起的2倍關(guān)系。

        3 單片機中Modbus RTU的實現(xiàn)

        Modbus串行傳輸模式有兩種,ASCII模式和RTU模式,兩種模式的區(qū)別在于:編碼格式不一樣,信息幀的起始、結(jié)束方法不一樣,信息幀內(nèi)部的延時不一樣,錯誤校驗算法不一樣,ASCII數(shù)據(jù)使用7位,信息的起始和結(jié)束用的字符作為標志,用0x3A表示起始,用0x0D或者0x0A表示結(jié)束,字符之間的延時可以長達1 s,使用縱向冗余校驗(LRC);RTU數(shù)據(jù)使用的是8位,起始和結(jié)束使用3.5個以上字符的時間間隔,數(shù)據(jù)幀內(nèi)的延時不得大于1.5個字符時間,使用循環(huán)冗余校驗(CRC)。RTU的傳輸效率大于ASCII。

        RTU數(shù)據(jù)幀的格式如下:

        其中,地址表示設(shè)備的地址,每個設(shè)備分配唯一的地址,功能碼表示對數(shù)據(jù)處理的方式,如讀、寫等。數(shù)據(jù)有4中不同的模型,包括讀離散輸入、讀寫線圈、只讀寄存器和保持寄存器。數(shù)據(jù)根據(jù)類型有各自的地址,范圍0~65 535。錯誤校驗使用CRC。

        圖4 A3979的電流衰減模式Fig.4 Current decaymode of A3979

        表1 數(shù)據(jù)幀格式Tab.1 Form at of data fram e

        對于本應(yīng)用,一軸的步進電機只需要設(shè)置3種數(shù)據(jù)模型就可以完成絕大部分功能,如表2所示,三軸系統(tǒng)設(shè)置3組這樣的數(shù)據(jù)模型即可。

        表2 步進電機數(shù)據(jù)模型Tab.2 Stepper m otor data model

        在單片機中,IO的狀態(tài)的改變使用IO中斷的方法,特別是極限開關(guān)的處理,當(dāng)極限開關(guān)動作時,需要步進電機立刻停止工作。

        在硬件上,單片機實現(xiàn)Modbus RTU使用了一個異步串口和一個定時器。異步串口負責(zé)接收數(shù)據(jù),把數(shù)據(jù)放在接收緩沖區(qū),并且給定時器賦初值;定時器負責(zé)計時,時刻監(jiān)視每兩個數(shù)據(jù)之間的時間間隔,當(dāng)一幀數(shù)據(jù)開始后,當(dāng)間隔大于3.5個字符長度時間,認為接收數(shù)據(jù)完成,通知主程序處理本幀數(shù)據(jù)。主程序處理一幀數(shù)據(jù)的流程圖如下。

        圖5 軟件流程圖Fig.5 Flow chart of the software design

        如果設(shè)備地址或者校驗碼不正確,都將本幀數(shù)據(jù)放棄;其余出錯方式按照Modbus的錯誤類型的定義。在生成返回信息時,如果是出錯信息,返回的功能碼是原來的功能碼+0x80,即將原來的功能碼最高位置1。

        為了減小單片機CPU的效率,這里所有的串口返回數(shù)據(jù)都是用DMA進行。這樣CPU計算完成返回信息后不需要等待串口設(shè)備進行數(shù)據(jù)發(fā)送,節(jié)約了CPU的時間。

        4 結(jié) 論

        文中設(shè)計的支持Modbus RTU協(xié)議的步進電機控制系統(tǒng)在某設(shè)備中得到了應(yīng)用。應(yīng)用中,主控單元根據(jù)軟件要求,同時控制了13路步進電機,其中有3路由嚴格的時序要求,這3路使用一個處理器進行控制,占用一個物理地址。其余10路分別使用各自的處理器,并分配各自的物理地址?;赗S-485網(wǎng)絡(luò)來控制多電機系統(tǒng),不但滿足了控制要求的實時性,而且控制電機的數(shù)目顯著增加,各個電機之間模塊可以互換,具有較高的可靠性,在運動自由度較多的場合會得到更多的應(yīng)用。

        [1]楊世超,陶正蘇.基于Modbus RTU通信協(xié)議的伺服電機聯(lián)動控制系統(tǒng)[J].電子設(shè)計工程,2012,20(1):91-97.

        YANG Shi-chao,TAO Zheng-su.Servo-motor control system based on Modbus RTU communication protocol[J].Electronic Design Engineering,2012,20(1):91-97.

        [2]Modbus-IDA.Modbus application protocol specification[EB/OL].(2006-12).http://www.modbus-ida.org/docs/Modbus_Application_Protocol_V1_1b.pdf.

        [3]史敬灼,王宗培.步進電動機驅(qū)動控制技術(shù)的發(fā)展[J].微特電機,2007(7):50-54.

        SHI Jing-zhuo,WANG Zong-pei.Review of stepping motors’driving technology[J].Small& Special Electrical Machines,2007(7):50-54.

        [4]李玲娟.多細分二相混合式步進電機驅(qū)動器的研制[D].陜西:西北工業(yè)大學(xué),2007.

        [5]AllegroMicro systems,Inc.A3979Micro stepping DMOSDriver with Translator[EB/OL].(2005-10).http://www.a(chǎn)llegromicro.com/en/Products/Motor-Driver-And-Interface-ICs/Bipolar-Stepper-Motor-Drivers/~/media/Files/Datasheets/A3979-Datasheet.a(chǎn)shx.

        [6]AllegroMicro systems,Inc.A3986Dual Full-BridgeMOSFET Driver with Micro-stepping Translator[EB/OL].(2012-01).http://www.a(chǎn)llegromicro.com/en/Products/Motor-Driver-And-Interface-ICs/Bipolar-Stepper-Motor-Drivers/~/media/Files/Datasheets/A3986-Datasheet.a(chǎn)shx.

        猜你喜歡
        數(shù)據(jù)模型串口繞組
        淺談AB PLC串口跟RFID傳感器的通訊應(yīng)用
        面板數(shù)據(jù)模型截面相關(guān)檢驗方法綜述
        加熱爐爐內(nèi)跟蹤數(shù)據(jù)模型優(yōu)化
        電子測試(2017年12期)2017-12-18 06:35:36
        基于FPGA的雙繞組無刷直流電機軟件設(shè)計
        電子制作(2017年1期)2017-05-17 03:54:12
        基于AL1676的單繞組LED驅(qū)動電源設(shè)計
        基于三步隱式Adams法的同步電機阻尼繞組電流計算
        電測與儀表(2016年2期)2016-04-12 00:24:42
        USB接口的多串口數(shù)據(jù)并行接收方法探索
        基于藍牙串口適配器的GPS接收機與AutoCAD的實時無線通信
        地礦測繪(2015年3期)2015-12-22 06:27:26
        10KV配變繞組材質(zhì)鑒別初探
        基于并行控制的FPGA多串口拓展實現(xiàn)
        国产精品美女| 久久96国产精品久久久| 人妻丝袜av中文系列先锋影音| 天天天综合网| 男女上床视频免费网站| 美腿丝袜在线观看视频| 无码中文亚洲av影音先锋| 日韩成人无码一区二区三区| 久国产精品久久精品国产四虎| 国产一区二区三区精品乱码不卡| 欲求不満の人妻松下纱荣子| 青青久在线视频免费观看| 国产精品情侣露脸av在线播放| 国产一区二区三区在线av| 国产极品粉嫩福利姬萌白酱| 国产精品成年片在线观看| 久久精品成人91一区二区| 亚洲av成人永久网站一区| 一女被多男玩喷潮视频| 久久精品成人欧美大片| 亚洲AV色欲色欲WWW| 好看的日韩精品视频在线| 国精产品一区一区三区有限公司杨 | 国产亚洲精品97在线视频一| 色偷偷av男人的天堂| 国产成人九九精品二区三区| 亚洲大胆视频在线观看| 视频一区视频二区制服丝袜| 亚洲国产精品特色大片观看完整版| 日韩AV无码中文无码AV| 少妇人妻无奈的跪趴翘起| 亚洲国产av玩弄放荡人妇| 久久尤物AV天堂日日综合| 最近中文字幕一区二区三区| 久久人人爽人人爽人人片av高请| 真实国产老熟女粗口对白| 99热在线播放精品6| 偷拍一区二区盗摄视频| 一边吃奶一边摸做爽视频| 久久天堂av色综合| 国产在线一区二区三区四区乱码 |