技術頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網 > 技術頻道 > 技術百科 > PLC串口自由協(xié)議通訊例程

PLC串口自由協(xié)議通訊例程

時間:2024-03-11 09:59:54來源:深圳市雷賽智能控制股份有限公司

導語:?自由協(xié)議通訊也稱無協(xié)議通訊,需要根據對方設備的通訊數據格式編寫一個臨時協(xié)議,雖然隨著標準協(xié)議(Modbus,USS等)的普及,自由協(xié)議通訊應用越來越少

  自由協(xié)議通訊也稱無協(xié)議通訊,需要根據對方設備的通訊數據格式編寫一個臨時協(xié)議,雖然隨著標準協(xié)議(Modbus,USS等)的普及,自由協(xié)議通訊應用越來越少,但是對于一些小的設備如掃碼槍、LCD顯示屏等,由于沒有集成標準通訊協(xié)議,所以只能選用自由協(xié)議通訊。以下例程是基于MC532(同平臺其它系列使用方法相同) PLC的RS232及RS485硬件端口與電腦串口調試助手(用于模擬串口設備)的自由協(xié)議通信例程說明。

  MC532 PLC端設置及程序編寫

  1、添加通訊功能庫

  左鍵雙擊【庫管理器】—左鍵單擊【添加庫】,搜索【Serial Communication】,單擊【確定】即可添加完成。

雷賽智能

雷賽智能

  2、創(chuàng)建如圖所示的變量

雷賽智能

  3、調用如圖所示的功能塊

雷賽智能

  4、編寫如圖所示程序 ①調用COM.Open,此功能塊為打開串口;變量usiListLength為變量pParameterList的數據長度(根據后續(xù)介紹可知,數據長度為7);變量pParameterList為指針變量,指針地址指向結構體COM.PARAMETER的數組aParamsB115200,數組包含了udiPort,udiValue(波特率)、udiBaudrate,udiValue(端口號) 、 udiParity,udiValue(校驗) 、 udiStopBits,udiValue(停止位) 、udiTimeout,udiValue(超時時間) 、udiByteSize,udiValue(數據位)及udiBinary,udiValue(二進制參數,啟用二進制模式)7種關于串口的參數,相關的變量創(chuàng)建直接參照下列庫文件中的例程,再對參數進行設置;變量hCom為結構體CAA.HANDLE數據類型,獲取通訊句柄;②udiPort,udiValue:波特率,此次例程設置波特率為115200;udiBaudrate,udiValue:端口號,2PLC的RS232端口為COM2,第一個RS485端口為COM0,第二個RS485端口為COM1,因此可根據使用不同硬件端口進行賦值;udiParity,udiValue:校驗類型(奇校驗、偶校驗或無校驗),此次例程設置偶校驗,賦值COM.PARITY.EVEN ;udiStopBits,udiValue:停止位( ONESTOPBIT/ONE5STOPBIT/TWOSTOPBIT ),此次例程設置為ONESTOPBIT;udiTimeout,udiValue:超時時間,此次例程設置成500ms;udiByteSize,udiValue:數據位,此次例程設置成8;udiBinary,udiValue:二進制參數,采取默認值設置成1即可;設置完成后由于pParameterList為指針類型,則填入ADR(aParamsB115200)即可;

雷賽智能

雷賽智能

雷賽智能

  ③調用COM.Write,此功能塊為串口發(fā)送數據;變量udiTimeout超時時間,此次例程設置為500ms;變量hCom為結構體CAA.HANDLE數據類型,為通訊句柄,可從Com.Open中的輸出變量hCom獲取;pBuffer為指針類型,數據指向串口發(fā)送數據緩存的地址,本例程設置寫入數值變量為BYTE類型的byWriteData,因此本例程填入ADR(byWriteData);szSize 為寫入數據長度,此次例程設置為10個BYTE數據長度,因此填入10;④調用COM.Read,此功能塊為串口讀取數據;變量udiTimeout超時時間,此次例程設置為500ms;變量hCom為結構體CAA.HANDLE數據類型,為通訊句柄,可從Com.Open 中的輸出變量 hCom獲取;pBuffer為指針類型,數據指向串口讀取數據緩存的地址,本例程設置寫入數值變量為BYTE類型的byReadData,因此本例程填入ADR(byReadData);szBuffer為從串口緩存讀取數據的大小,此次例程設置為10個BYTE數據長度,因此填入10;⑤調用COM.Close,此功能塊為關閉串口;變量hCom為結構體CAA.HANDLE數據類型,為通訊句柄,可從Com.Open中的輸出變量hCom獲取。

  打開串口助手,設置相關參數

  1、打開計算機管理,查看計算機串口端口號(本次例程使用USB轉串口,端口號為COM4)

雷賽智能

  2、打開串口助手軟件(大家可自行在網絡上搜索購買,使用方法基本類似)并設置相關參數

  【端口】COM4(計算機端口號);【波特率】115200;【數據位】8;【校驗位】E偶;【停止位】1;左鍵單擊選擇【輸入 HEX】及【顯示HEX】,設置以16進制數據類型進行寫入及顯示;左鍵單擊【打開串口】即可。

雷賽智能

  PLC與電腦端做數據發(fā)送及讀取

  1、PLC發(fā)送數據,電腦端讀取數據

  觸發(fā)COM.Open打開串口端口,對byWriteData賦值十進制數65(16進制為0x41)后觸發(fā)COM.Write,可見電腦端可讀取PLC發(fā)送的數值。

雷賽智能

  2、電腦端發(fā)送數據,PLC端讀取數據

  通過串口助手發(fā)送16進制數值0x86;觸發(fā)COM.Open打開串口端口,關閉串口數據寫入功能塊,觸發(fā)COM.Read 功能塊,可成功讀取16進制數值0x86(十進制為134)

雷賽智能

雷賽智能

雷賽智能

-END-

標簽: 雷賽智能

點贊

分享到:

上一篇:便攜儲能的新市場在汽柴油發(fā)...

下一篇:用了變頻器就節(jié)能了嗎?變頻...

中國傳動網版權與免責聲明:凡本網注明[來源:中國傳動網]的所有文字、圖片、音視和視頻文件,版權均為中國傳動網(surachana.com)獨家所有。如需轉載請與0755-82949061聯(lián)系。任何媒體、網站或個人轉載使用時須注明來源“中國傳動網”,違反者本網將追究其法律責任。

本網轉載并注明其他來源的稿件,均來自互聯(lián)網或業(yè)內投稿人士,版權屬于原版權人。轉載請保留稿件來源及作者,禁止擅自篡改,違者自負版權法律責任。

網站簡介|會員服務|聯(lián)系方式|幫助信息|版權信息|網站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網-工業(yè)自動化與智能制造的全媒體“互聯(lián)網+”創(chuàng)新服務平臺

網站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2025 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網安備 44030402000946號