新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于Profibus的步進電機控制系統技術要點揭示

        基于Profibus的步進電機控制系統技術要點揭示

        作者: 時間:2012-10-24 來源:網絡 收藏

          根據壓配所要完成的位移量由上面公式可以算出脈沖的頻率與個數,并通過控制電機速度來控制完成一次壓配的時間。
          3 軟件設計
          3.1 軟件整體結構
          通過-DP 總線進行通訊和控制的系統,需要導入硬件設備商提供的GSD 文件,本系統中PLC 作為系統的總站,MP85ADP 模擬量信號放大器作為DP 從站,導入GSD 文件來進行組態。程序主要由以下幾部分組成:OB100、OB1、DB20、SFB49 和SFC14。
          OB100 是暖啟動組織塊,系統啟動就調用OB100,它的主要作用是初始化系統啟動時的軟件門的值。
          OB1 是主程序組織塊,是整個控制的核心部分,一些控制命令,如速度命令、位置命令、復位命令以及電機控制器的初始化都是由它完成的。它包括系統功能SFC14、系統功能塊SFB49和背景數據塊DB20。
          系統功能SFC14 通過-DP 總線定期的從DP 從站讀取和更新數據。每個SFC14 只能到配置好的指定地址上去讀取數據,系統中要讀取位移和壓力的值所以要使用兩個SFC14
          分別到硬件組態中設置好的地址上去讀取。其中LADDER 參數記錄的是DP 從站中數據的地址,RET-VAL 參數在發生錯誤的時候會被激活,返回一個錯誤碼。RECORD 參數記錄的是從站中讀取來的數據在主站中的存放目的地址。
          系統功能塊SFB49 實現的是脈沖寬度調制功能(Pulse width modulation、PWM)。程序中用到它的主要參數有LADDR、SW_EN、OUTP_VAL 等。LADDR 參數記錄的是子模塊的I/O 地址,它是在硬件組態時分配的;SW-EN 為軟件門,來控制功能的啟動/停止;OUTP_VAL 為設定脈沖寬度的參數。
          3.2 使用S7-300C 的脈寬調制功能實現控制
          系統中PLC 的CPU 集成了4 路完全獨立最高2.5KHZ 的脈沖輸出,同時帶有門功能可啟動/停止脈沖寬度調制(程序中采用的是軟件門中斷方式)。使用STEP7 V5.4 進行系統硬件組
          態時,設置輸出脈沖參數的輸出格式為Per mil 或S7 analog。
          Per mil 為1000,Pulse duration=Outp_val/1000*Period duration S7 analog,Pulse duration=Outp_val/27648 * Period duration S7 模擬量轉化成脈沖輸出。
          Outp_val 是SFB49 中的一個變量,可以在程序中隨時修改脈沖寬度。
          時基可以選擇1ms 或0.1ms。Period 最小為0.4ms 所以最大輸出頻率為2.5KHZ。
          脈沖說明見圖3。


          在硬件組態時,設置的脈沖周期為1 秒,脈沖寬度為500/1000*1S=0.5S 當M1.1 為1 時輸出脈沖,M1.2 為1 時,周期時間改變為2S,這時脈沖寬度變為500/1000*2S=1S.如果CPU 掉電,則恢復在硬件組態里的值,周期時間為1 秒。
          4 結束語
          系統的搭建是基于生產線上的實際應用,精度要求較高,應客戶的要求選用了比較高端的設備,因此成本較高。實際應用中表明,將基于 通訊的應用到壓配生產中提高了系統的穩定性和設備的進給的精度,提升了壓配過程的自動化水平。同時Profibus-DP 接口的引入,使得在工業控制網絡中的通信與控制更為方便、靈活和可靠,并為將小型計算機集成到大型的分布式(Distributed control system,DCS)中提供了應用前景。
          本文作者創新點:使用PLC 的脈寬調制功能實現對控制,將Profibus 總線集成到步進電機的控制系統中,完成了對傳統壓配裝置的技術改造,實現了對壓配過程的全程監控,
          提升了工序的效率和可靠性。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 九寨沟县| 乌拉特后旗| 内江市| 衡阳市| 安康市| 新野县| 桃园县| 阿城市| 兴山县| 东阿县| 龙里县| 宕昌县| 健康| 乌拉特前旗| 西乌| 清涧县| 碌曲县| 澎湖县| 延川县| 宝丰县| 金寨县| 景洪市| 余干县| 鸡泽县| 阳新县| 永和县| 遵义县| 长泰县| 澄迈县| 阿鲁科尔沁旗| 中宁县| 清流县| 双桥区| 辽阳县| 霍邱县| 汤阴县| 清丰县| 喀什市| 裕民县| 镇坪县| 宁南县|