<object id="ir2le"></object>
  • 加入收藏 在線留言 聯系我們
    關注微信
    手機掃一掃 立刻聯系商家
    全國服務熱線15267534595

    2024四川省遂寧市SIEMENS西門子(授權)中國西南地區一級總代理商

    更新時間
    2024-12-27 09:10:00
    價格
    請來電詢價
    變頻器
    西門子代理商
    觸摸屏
    西門子一級代理
    伺服電機
    西門子一級總代理
    聯系電話
    18126392341
    聯系手機
    15267534595
    聯系人
    梁濤
    立即詢價

    詳細介紹

    本文是一篇綜合性非常強的文章,從PLC輸入輸出及步進電機接線開始,到PLC運動控制程序編寫,再到后續的ModbusTCP通信協議及上位機編程實現Zui終控制,涉及知識面比較廣,能夠讓我們很好地將所學知識結合起來。

    2. 項目開發平臺

    采用西門子TIA Portal V15編程軟件編寫運動控制程序,實現PLC(S7-1200系列:CPU1214C DC/DC/DC )對步進電機的控制,再通過編寫ModbusTCP程序,將控制地址進行映射,從而方便上位機(VS 2019開發)與PLC進行通信,Zui終實現步進電機的運動方向、速度及距離的靈活控制。

    涉及硬件:開關電源、S7-1200PLC、步進驅動器、步進電機、單軸模組、限位開關

    涉及軟件:TIA Portal V15、VS2019、ModbusPoll(用于測試通信)


    3. 硬件接線

    圖片

    4. PLC編程


    步   驟操作說明
    1通過博圖軟件創建一個新的PLC項目,
    根據硬件型號插入新設備,這里為
    CPU 1214C DC DC DC
    圖片
    2雙擊PLC的以太網口,設置IP地址,
    這里設置為192.168.2.210
    圖片
    3雙擊CPU,在脈沖發生器PTO/PWM選項中設置信號類型為PTO,脈沖輸出為Q0.0,方向輸出為Q0.1圖片
    4新建一個工藝對象,名稱為軸1,通過基本參數>驅動器,設置脈沖輸出為Pulse1圖片
    5通過擴展參數>位置限制,設置上下限位分別為I0.1和I0.2圖片
    6通過擴展參數>回原點>主動,設置原點開關為I0.0圖片
    7程序段1,調用MC_Power使能,各個引腳填寫如圖所示,其中Asix選擇軸1圖片
    8程序段2,調用MC_MoveRelative,各個引腳填寫如圖所示,該程序段主要用于執行相對運動圖片
    9程序段3,調用MC_MoveAbsolute,各個引腳填寫如圖所示,該程序段主要用于執行juedui運動
    10程序段4,調用MC_MoveJog,各個引腳填寫如圖所示,該程序段主要用于執行前進和后退點動圖片
    11程序段5,調用MC_Home,各個引腳填寫如圖所示,該程序段主要用于執行歸零圖片
    12程序段6,調用MC_Reset,各個引腳填寫如圖所示,該程序段主要用于執行復位功能圖片
    13程序段7,調用MC_Halt,各個引腳填寫如圖所示,該程序段主要用于執行暫停功能圖片
    14程序段8,調用MC_ReadParam,來讀取相關參數,各個引腳填寫如圖所示,該程序段主要用于讀取實時脈沖圖片


    5. 上位機開發思路

    目前比較主流開發上位機的方式,主要是組態軟件(觸摸屏)、C#開發上位機,C#開發上位機與傳統的組態軟件之間的區別,主要體現在如下三個方面:

  • 功能限制:組態軟件對于一些特定的需求或者邏輯,會有一定的局限性,使用上也受到軟件本身的約束;C#開發上位機完全自主開發,幾乎不存在功能上的限制,并且擴展方便。
  • 技術要求:組態軟件Zui大的優勢在于方便,因為它本身都集成了一些通用協議和元件,只需要按照使用說明進行組態配置即可;C#開發需要完全自己搭建框架和實現底層代碼,對開發者的技術要求會更高一些。
  • 價格成本:組態軟件需要按套、按點位收費,意味著每個項目無形中都有一個基礎成本;C#開發上位機自主開發,不需要二次授權費用,并且開發一套之后,可以快速應用到其他項目中。

  • 采用C#上位機開發,首先需要考慮的是通信問題。西門子S7-1200支持很多種不同的通信協議,包括S7、ModbusTCP、TCP/IP、UDP、OPC等,從開發成本上來說,我們優先考慮S7和ModbusTCP,對于S7和ModbusTCP通信協議,比較一下兩者的優缺點:

  • S7協議為西門子內部協議,協議本身不公開,需要調用或者自己開發通信庫,使用S7通信協議需要勾選CPU中的允許來自遠程對象的PUT/GET通信訪問。
  • ModbusTCP為公開、免費協議,可以自己開發通信庫或者使用開源庫,使用ModbusTCP通信協議需要編寫一定的PLC程序來實現地址映射。
  • 從公開免費和使用范圍的角度來考慮,這里采用ModbusTCP通信協議,因為學會了ModbusTCP,意味著市場上的大部分儀表、PLC通信都可以搞得定,PLC程序編寫如下如下所示:

  • 創建DB塊

    這里首先創建一個DB塊,里面包含了常用的一些操作和參數設置,值得注意的是,由于Modbus保持型寄存器的Bit位操作比較麻煩,因此這里我們統一使用Word類型來代替Bit。

  • 圖片

  • Modbus地址與PLC地址的映射(控制位)
  • 圖片

  • Modbus地址與PLC地址的映射(參數地址)
  • 圖片

  • ModbusServer程序編寫
  • 圖片



  • 相關產品

    聯系方式

    • 電  話:18126392341
    • 聯系人:梁濤
    • 手  機:15267534595
    • 微  信:15267534595