歡迎來到海藍智能科技有限公司!

全國服務熱線

18018737509

用心創造品質,服務贏得價值
您當前的位置 :首頁 > 行業資訊 > 三菱plc編程中LRC校驗碼程序編寫

熱門關鍵詞

聯系我們

深圳市海藍智能科技有限公司


電 話:18018737509

電 話:13823726967

郵 箱:

網 址:http://www.lexabenks.com

地 址:深圳市龍華區觀湖街道觀城社區環觀南路105-13號201-203

在線咨詢

三菱plc編程中LRC校驗碼程序編寫

2021-07-23
229次

  三菱plc中的LRC校驗碼程序的編寫,在PLC與設備進行通訊時采用MODBUS協議時,一般會有兩種數據模式,1是RTU模式,2是ASCII碼模式。RTU的數據傳輸采用CRC校驗,而ASCII碼則采用LRC校驗值。LRC值校驗涵蓋從從機地址到數據的信息部分,校驗和等于所有參與校驗數據的字符和的補碼。


  我們先說下具體的校驗碼怎么計算,然后說三菱plc的LRC校驗碼程序的編寫。


  例子1


  采用ASCII碼模式控制變頻器指令:01 03 21 00 00 01,這條指令中01一般是站號,03是讀取命令,2100是參數地址(例如運行頻率),00 01代表數據的個數。那么它的LRC校驗碼怎么計算:指令的數據是16進制的,和為:0x01+0x03+0x21+0x01=0x26,對0x25取2的補碼就是DA,具體計算就是取反加1,如:0x26=B0010,0110,取反后得到B1101,1001,加1得到B11011010=0xDA,那么LRC校驗碼就是DA。


  例子2


  同樣的控制變頻器指令:03 06 00 03 27 10, 和為0x43,取反加1為0xBD,LRC校驗值就是BD。


  明白了它的計算過程接下來我們在PLC編寫它的算法,我們知道在PLC的運算中都是十進制的,為了方便轉換和計算,可采取另外一種方法(原理一樣),我們知道ASCII碼是2位的16進制數,取反過程可看做0xFF減去檢驗總和如上述的0x26、0x43,加1就變成0x100減去檢驗總和,轉換成10進制的就是256(D)-和(D),再經過ASCI指令轉換成ACIIS碼就可以了。以下面梯形圖進行說明:


  使用RS指令向變頻器發送命令,01 03 33 03 00 01,轉換成16進制01 03 21 03 00 01這是一個讀取頻率的指令,LRC校驗碼的運算梯形圖:


  使用一個變址寄存器Z0對數據D201到D206進行累加求和D40,最后用K256減去41就是LRC校驗碼215,通過ASCI指令轉換成ASCII碼,通過查看擴展ASCII碼表:


  215的16進制為D7,與01+03 +21+ 03+ 00 +01=0x29=B00101001,取反加1得到11010111=0x(D7),結果一致。


海藍智能擁有一批理論與實踐經驗豐富的工程技術人員;長期承接自動化工程項目、技術開發、安裝調試和咨詢培訓,為向用戶提供全面的技術支持和高效、快捷的售后服務?,F公司開設多個技術交流群,里面有眾多技術大牛經驗分享,解答疑問。有需要的朋友可以咨詢在線客服或者留下你的聯系方式。


標簽

公眾號二維碼

電話號碼:18018737509

傳真:0755-2101 7659

郵箱:

深圳市龍華區觀湖街道觀城社區環觀南路105-13號201-203

18018737509

服務熱線

深圳市海藍智能科技有限公司 版權所有備案號:粵ICP備20051893號, 歡迎來電咨詢!
cache
Processed in 0.008266 Second.
另类亚洲日本专区一二三四区0,国精品在亚洲_欧美,精品视频无码一区二区三区,日本阿v手机不卡在线观看视频