從這份文件裡面可以查到:
http://www.modbus.org/docs/PI_MBUS_300.pdf
當我們功能碼03時,讀取的位址6B=107
對應的位址是40108=(40001+107)
當我們功能碼04時,讀取的位址08=08
對應的位址是30009=(30001+08)
所以呢!!!
16進制位址+40001 是一種隱藏功能碼的表示方式。 如果沒有寫任何功能碼的情形下。40001就是指功能碼03 + 00位址
而不是全部都加40001,在功能碼04的情形下,是要加30001的。
還有其他情形,是需要加不同的值。
2017年8月2日 星期三
2017年7月29日 星期六
有RS232/485,並不代表有Modbus
RS232/485是指硬體的架構。
Modbus是軟體(通訊內容)的架構。
或許可以想成,大家都是人,但不一定都是說中文。
最近有2-3人詢問,有RS232/485(人),就支援Modbus(中文)嗎?
答案是:NO
一定要RS232/485 支援Modbus通訊格式才是有支援Modbus的通訊。
如果只有RS232/485,但都沒有提到Modbus,那八成就是沒有支援Modbus了。
有其他幾種可能:
1.有自已的格式
2.支援其他通訊格式。
那沒有Modbus的設備就不能用嗎?
答案:NO.
其實PLC也有串列通訊指令:RS 可以發出你組成的通訊碼。
簡單來說:
ADPRW Modbus指令,是將你簡化Modbus的使用
而RS是最低層的指令,檢查碼(CRC、LRC)都需要自已計算。
所以:RS指令+檢查碼=ADPRW Modbus專用指令
但:
RS指令的用途,其實就是用在非Modbus設備,讓你可以自已組成命令(非Modbus),
來跟這些非Modbus設備通訊。
有RS232/485,並不代表有Modbus
http://www.plcnc.info/forum.php?mod=viewthread&tid=72&fromuid=1
(出處: PLC CNC)
Modbus是軟體(通訊內容)的架構。
或許可以想成,大家都是人,但不一定都是說中文。
最近有2-3人詢問,有RS232/485(人),就支援Modbus(中文)嗎?
答案是:NO
一定要RS232/485 支援Modbus通訊格式才是有支援Modbus的通訊。
如果只有RS232/485,但都沒有提到Modbus,那八成就是沒有支援Modbus了。
有其他幾種可能:
1.有自已的格式
2.支援其他通訊格式。
那沒有Modbus的設備就不能用嗎?
答案:NO.
其實PLC也有串列通訊指令:RS 可以發出你組成的通訊碼。
簡單來說:
ADPRW Modbus指令,是將你簡化Modbus的使用
而RS是最低層的指令,檢查碼(CRC、LRC)都需要自已計算。
所以:RS指令+檢查碼=ADPRW Modbus專用指令
但:
RS指令的用途,其實就是用在非Modbus設備,讓你可以自已組成命令(非Modbus),
來跟這些非Modbus設備通訊。
有RS232/485,並不代表有Modbus
http://www.plcnc.info/forum.php?mod=viewthread&tid=72&fromuid=1
(出處: PLC CNC)
2017年7月26日 星期三
不用PLC,如何讀取外部Modbus裝置,用HMI也可以
用PLC讀取Modbus好麻煩喔!
要設定好多東西,有沒有簡單一點的方式!!
其實在電控領域裡,有很多裝置都是用Modbus在通訊,
只是簡化到相當的程度,所以感覺不出來。
請先看這篇:HMI(人機介面)沒有的通訊協議,該怎麼使用?
其實台達HMI跟台達PLC之間,就是用Modbus在通訊,
只是簡化到看不出來。
要設定好多東西,有沒有簡單一點的方式!!
其實在電控領域裡,有很多裝置都是用Modbus在通訊,
只是簡化到相當的程度,所以感覺不出來。
請先看這篇:HMI(人機介面)沒有的通訊協議,該怎麼使用?
其實台達HMI跟台達PLC之間,就是用Modbus在通訊,
只是簡化到看不出來。
訂閱:
文章 (Atom)