編程自由口通訊的基本步驟
設置通訊參數:如果是集成在本機上基于RS485口,在SMB30中設置(prot0口);如果是采用通訊信號板,則在SMB130中設置(prot1口),這2個地址的設置,僅僅是對應的通訊口的不同,參數是相同的。
定義接收信息的控制字節,對于prot0口在SMB87;對于prot1口在SMB187中設置。
設置根據接收控制字節、通訊參數的通訊數據。
端口0:
SMB87/SMB88/SMW90/SMW92;
端口1:
SMB188/SMB189/SMW190/SMW192。
(根據協議用戶自由選擇)
設置通訊數據總字節數,SMB94/SMB194。(范圍1~255)。
設置中斷事件號、開中斷。發送完成中斷及接收完成中斷。
啟用發送指令XMT。
在發送完成中斷里編寫接收指令RCV;在接收完成中斷里編寫發送指令XMT。
假設:做這樣一個例子,讓西門子200smart plc本機RS485口發送一串字符(siemens)到串口調試軟件的信息接收區,串口調試軟件的發送區發送一串(ni hao!)到200smart plc數據寄存器VB102開始的6個字節中,接收信息啟用起始符、結束符方式。
做這個程序前先定義好一些通訊參數:(按上面的7點內容展開)
定義SMB30: 自由口通訊、頻率9600、無校驗,SMB30=16#09
定義SMB87: 啟用接收信息控制、啟用起始符、結束符,SMB87=16#E0
設置起始符: SMB88=16#3A(自由選取)
設置結束符: SMB89=16#0A(自由選取)
設置中斷事件號: 發送完成中斷事件號9;接收完成中斷事件號23
開中斷
在上述初始化程序中,啟用發送指令,并編寫相應的程序
定義好發送和接收數據的數據儲存地址區
西門子S7-200 PLC專用無線通訊終端
了解詳情點擊下圖
程序樣例
通訊初始化子程序。
在發送完成中斷中調用接收指令。
在接收完成中斷中調用發送指令。
在主程序中調用通訊初始化子程序。
定義發送數據塊數據:
(發送字符siemens: 16#73; 16#69; 16#65; 16#6D; 16#65; 16#6E; 16#73)在數據塊中寫入,其中VB0是發送數據字符的個數不參與通訊。
需要注意的一些問題:在“系統塊”中設置“啟動”項“cpu模式”為“RUN”并確定。
編譯、保存用戶程序,將程序下載到cpu中并運行cpu:創建一個便于觀察的“狀態圖表”:將發送和接收的數據切換到ASCLL顯示模式,并監控。
連接通訊電纜,打開串口調試軟件,設置好于PLC通訊SMB30一致的通訊參數,并在數據發送區填寫好等待發送的數據:由起始符開始......到結束符。
16#3A 16#6E 16#69 空格(占一個字符) 16#68 16#61 16#6F 16#21 16#0A
這時,只要我點擊串口調試軟件發送區的“手動發送”按鈕,軟件的接收區如果通訊正常就會顯示“Siemens”的字符。
觀察串口調試軟件的接收區回傳回來的siemens字符。
回過來觀察PLC“狀態圖表”中的顯示部分內容。
一個簡單的數據發送和接收程序編寫、調試已經完成。其他復雜的通訊都是基于這種模式編寫的。無非就是教案或者數據格式等不一樣。
- 大神經驗 | 新手PLC項目調試七步法! 2024-12-02
- 幾步教你搞定模擬量計算 2024-12-02
- 西門子PLC編程控制實例:接線圖及梯形圖程序 2024-12-02
- 臺達PLC和昆侖通態觸摸屏通訊設置 2024-12-02
- 變頻器如何與西門子300PLC實現通訊實例 2024-12-02
- 西門子S7-200 SMART PLC功能指令學習及實例分析 2024-12-02
- PLC中的三大量分別是什么?有什么關系? 2024-12-02
- 你知道幾種PLC標準編程語言? 2024-12-02
- 【威綸通】以太網線上傳、下載觸摸屏程序詳細操作步驟 2024-12-02
- PLC控制伺服電機的三大方式!圖文實例解析 2024-12-02
- PID控制中P、I、D參數的作用究竟是什么? 2024-12-02
- 你的PLC和你的觸摸屏為什么總是通訊不上? 2024-12-02
- 【干貨】詳解RS232 RS485 RS422串口amp握手 2024-12-02
- 西門子PLC編程控制入門實例:接線圖及梯形圖程序 2024-12-02
- 電氣工程師電氣設計的電氣元器件布局 2024-12-02
聯系方式
- 電 話:13922889745
- 經理:向小姐
- 手 機:18475208684
- 微 信:18475208684