<object id="seflp"></object>

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

          6SL3210-1KE15-8AF2現貨西門子代理

          更新時間
          2024-10-30 14:14:21
          價格
          請來電詢價
          西門子
          G120C
          變頻器
          2.2KW內置A級濾波器
          德國
          3AC 380-480V濾波A級
          聯系電話
          17838383235
          聯系手機
          17838383235
          聯系人
          徐嘉泉
          立即詢價

          詳細介紹

          西門子S7-1200 PLC與第三方設備自由口通信如何組態配置?參數如何設置?




          西門子S7-1200 緊湊型PLC在當前的市場中有著廣泛的應用,由于其,所以常被用作小型自動化控制設備的控制器,這也使得它經常與第三方的設備(掃描槍、打印機等設備進行通訊。因為沒有第三方的設備,這里就以超級終端為例介紹自由口通訊。




          1.控制系統原理


          圖片

          圖1:控制系統原理


          2.硬件需求
          S7-1200 PLC目前有3種類型的CPU:
          1)S7-1211C CPU。
          2)S7-1212C CPU。
          3)S7-1214C CPU。
          這三種類型的CPU都可以連接三個串口通信模版。
          本例中使用的PLC硬件為:
          1)PM1207電源 ( 6EP1 332-1SH71 )
          2) S7-1214C ( 6ES7 214 -1BE30 -0XB0 )
          3) CM1241 RS232 ( 6ES7 241 -1AH30 -0XB0 )

          3.軟件需求

          1) 編程軟件 Step7 Basic V10.5 ( 6ES7 822-0AA0-0YA0)

          4.組態

          我們通過下述的實際操作來介紹如何在Step7 Basic V10.5 中組態S7-1214C 和超級終端通信。

          點擊桌面上的“Totally Integrated Automation Portal V10”圖標,打開如下圖:


          圖片

          圖2: 新建S7 -1200項目


          首先需要選擇“Create new project”選項,然后在“Project name:”里輸入PTP;在“Path:”修改項目的存儲路徑為“C:\”;點擊“Create”,這樣就創建了一個文件PTP的新項目。創建后的窗口如下圖所示:


          圖片

          圖3: 新建項目后


          點擊門戶視圖左下角的“Project View”切換到項目視圖下,如下圖:


          圖片

          圖4: 切換到項目視圖


          打開后,在“Devices”標簽下,點擊“Add new device”,在彈出的菜單中輸入設備名“PLC_1”并在設備列表里選擇CPU的類型。選擇后如下圖:


          圖片

          圖5:PLC硬件組態


          插入CPU后,點擊CPU左邊的空槽,在右邊的“Catalog ”里找到“Communication”下的RS232模塊,拖拽或雙擊此模塊,這樣就把串口模塊插入到硬件配置里,接下來就需要配置此RS232模塊硬件接口參數,選擇RS232模塊,在其下方會出現該模塊的硬件屬性配置窗口, 在屬性窗口里有兩個選項,一個是“general”;一個是“RS232 interface”。在“General”里包括了此模塊的“項目信息”和“訂貨信息”;而在“RS232 interface”里包括“項目信息”、“端口的配置”、“發送信息的配置”、“接收信息的配置”和“硬件識別號”。在這里我們選擇“RS232 interface”,在“端口”配置的選項里,進行端口的參數配置,
          波特率為:9600 ;
          校驗方式:無 ;
          數據位為:8 ;
          停止位:1;
          硬件流控制:無;
          等待時間:1ms
          設置參數如下圖:


          圖片

          圖6:RS232接口配置


          此時確認一下“硬件識別號”為11。

          此時,完成了硬件的組態,接下來需要編寫串口通訊程序,在這里我們實現兩個功能:
          A、 S7-1200 發送數據給超級終端;
          B、 超級終端發送數據給S7-1200

          對于個功能:S7-1200發送數據給超級終端,實際上是S7-1200是數據的發送方,超級終端是數據的接收方,對于S7-1200需要編寫發送程序;而對于超級終端來說,只要打開超級終端程序,配置硬件接口參數與前面S7-1200的端口參數一致即可。

          下面的步驟將具體介紹此功能實現的步驟:

          ①、在PLC中編寫發送程序。在項目管理視圖下雙擊“Device”下的程序塊下的Main(OB1),打開OB1,在主程序中調用SEND_PTP功能塊如下圖所示:(注:SEND_PTP在指令庫下的擴展指令中通訊指令下)


          圖片

          圖7: 調用發送功能塊


          要對SEND_PTP賦值參數,首先需要創建SEND_PTP的背景數據塊和發送緩沖數據塊 ,雙擊“Devices”——> “PLC_1”——>“Program Block ”——“Add new block”,在彈出的串口命名DB_Send_PTP,選擇DB塊,在Type后選擇“SEND_PTP(SFB113)”


          圖片

          圖8: 創建發送功能塊的背景數據塊


          插入背景DB后,再插入發送緩沖DB塊,重復上面的步驟,只是在選擇DB類型為“Global DB”,并去掉“Symbolic access only”選項勾(這樣可以對該DB塊進行直接地址訪問),并取名該DB塊為DB_SEND_BUFF。建好這兩個DB塊后,雙擊打開DB_SEND_BUFF預先定義好要發送的數據,如下圖所示:


          圖片

          圖9:在接收緩沖區中接收到的數據


          定義完發送緩沖區后,接下來就可以對SEND_PTP賦值參數,賦值參數后如下圖:


          圖片

          圖10:發送編程


          在上面的編程塊里需要注意的是,在指定發送緩沖區時。字符的開始地址是從第二個字節,而不是零字節開始,即是P#DB2.DBX2.0 Byte10 而不是P#DB2.DBX0.0 Byte10,原因是由于S7-1200對字符串的存放的格式造成的,S7-1200對字符串的前兩個字節的定義字節是大的字符長度,第二個字節是實際的字符長度。接下來才是存放實際字符。如下圖:


          圖片

          圖11:String存儲格式


          上面就完成了程序的編寫,對項目進行編譯;右擊PLC_1項目在彈出的菜單里選擇“Complies ALL”選項,這樣就對硬件與軟件進行編譯,如下圖:


          圖片

          圖12:編譯項目


          編譯且沒有錯誤后就可以下載程序到PLC中,同樣右擊PLC_1項目,在彈出的菜單選擇“Download to Device”。
          ②、用串口交叉線連接S7-1200的串口與計算機的串口,打開計算機的超級終端程序,并設置硬件端口參數如下圖:


          圖片

          圖13:超級終端的端口設置


          ③、打開OB1功能塊在線監控程序,在變量監控表里強制M0.0為1,觸發數據的發送,此時在超級終端就會接收到發送的數據,如下圖:


          圖片

          圖14:在超級終端監控發送來的數據


          對于第二個功能:超級終端發送數據給S7-1200,實際上是S7-1200是數據的接收方,超級終端是數據的發送方,對于S7-1200需要編寫接收程序;而對于超級終端來說,只要打開超級終端程序,配置硬件接口參數與前面S7-1200的端口參數一致,在界面上輸入發送內容即可。

          下面的步驟將具體介紹此功能實現的步驟:

          ①、在PLC中編寫發送程序。在項目管理視圖下雙擊“Device”下的程序塊下的Main(OB1),打開OB1,在主程序中調用RCV_PTP功能塊如下圖所示:(注:RCV_PTP在指令庫下的擴展指令中通訊指令下)


          圖片

          圖15: 調用發送功能塊


          要對RCV_PTP賦值參數,首先需要創建RCV_PTP的背景數據塊和發送緩沖數據塊 ,雙擊“Devices”——> “PLC_1”——>“Program Block ”——“Add new block”,在彈出的串口命名DB_RCV_PTP,選擇DB塊,在Type后選擇“RCV_PTP(SFB114)”


          圖片

          圖16: 創建接收功能塊的背景數據塊


          插入背景DB后,再插入接收緩沖DB塊,重復上面的步驟,只是在選擇DB類型為“Global DB”,并去掉“Symbolic access only”選項勾(這樣可以對該DB塊進行直接地址訪問),并取名該DB塊為DB_RCV_BUFF。建好這兩個DB塊后,雙擊打開DB_RCV_BUFF定義接收緩沖區數據的類型,如下圖所示:


          圖片

          圖17:定義接收緩沖區


          定義完接收緩沖區后,接下來就可以對RCV_PTP賦值參數,賦值參數后如下圖:


          圖片

          圖18:接收編程


          在上面的編程塊里需要注意的是,在指定接收緩沖區時。字符的開始地址是從第二個字節,而不是零字節開始,即是P#DB2.DBX2.0 Byte10 而不是P#DB2.DBX0.0 Byte10,原因是由于S7-1200對字符串的存放的格式造成的,S7-1200對字符串的前兩個字節的定義字節是大的字符長度,第二個字節是實際的字符長度。接下來才是存放實際字符。如下圖:


          圖片

          圖19:String存儲格式



          圖片

          圖20:編譯項目



          圖片

          圖21:超級終端的端口設置


          在桌面上新建文本文件,打開此文本文件在里面輸入“gfdcba”,如下圖:


          圖片

          圖22:在文本文件下輸入要發送的字符串


          ③、打開變量監控表,強制M0.0,使能接收。然后, 在超級終端里,選擇菜單“Transfer”下的“Send Text file”,在打開的窗口里找到桌面 上的文本文件。


          圖片

          圖23:通過超級終端發送數據


          打開DB_RCV_BUFF數據塊,在線查看接收到的數據,如下圖:


          圖片

          圖23:接收緩沖區中接收到的數據


          通過上面的例子實現了簡單的應用,在實際的應用過程中,需要按第三方設備的協議進行編寫S7-1200的程序。


          聯系方式

          • 電  話:17838383235
          • 經理:徐嘉泉
          • 手  機:17838383235
          • 微  信:17838383235