zulong
級別: 正式會員
|
圖片:
圖片:
請教大神如何用FX-2N 讀取H3400變頻器的轉速.頻率、電流 控制變頻的正轉 寫入頻率 |
---|---|
|
zhangqi_1234
級別: 略有小成
|
使能MODBUS-RTU通信時,使用功能碼H03,讀取指定地址的寄存器數據,然后經計算得出單位為rpm的轉速值,單位為Hz的頻率等。你給的資料不全,帶R表示只讀,存儲變頻器的工作狀態。帶W表示可寫入,用于控制變頻器的工作狀態。沒有看到帶R的用于存儲轉速、頻率和電流的寄存器。 如果地址為5的寄存器,存儲轉速值,變頻器的站號為1,指令格式:[RS D100 K8 D200 K8],D100存儲站號H01。D101存儲功能碼H03。D102存儲H00,D103存儲H05(轉速地址)。D104存儲H00,D105存儲H01(讀取的寄存器個數)。D106-D107存儲CRC校驗碼。D200-D207存儲接收的數據。有關MODBUS-RTU的編程,可查閱李金誠的教材。 樓主留言:請您幫忙看下我寫的程序有什么問題 |
---|---|
|
zulong
級別: 正式會員
|
圖片:
圖片:
圖片:
圖片:
這個是我寫的與眾辰變頻器通信 控制正轉 反轉 停止 可是與變頻器485通信以后 plc錯誤燈閃爍 求教下大家 寫入數據功能碼是06H 讀取功能碼是03H [ 此帖被zulong在2017-09-17 09:26重新編輯 ] |
---|---|
|
zhangqi_1234
級別: 略有小成
|
1、D8120參數的高8位必須是H0C,你的是H1C。查閱FX2N的通信手冊,就知道為什么是H0C。 2、PLC與變頻器的通信協議、通信速率、奇偶校驗、停止位等必須一致。 3、PLC與變頻器是MODBUS-RTU通信,而不是MODBUS-ASCII通信。因而不會用CCD、ASCII指令,需要編寫CRC校驗碼計算程序。 4、MODBUS-RTU通信協議下,PLC發送數據都是8個字節,而不是15個字節。 5、發送數據之前,把發送的數據先保存在數據緩沖區,調用子程序計算出CRC校驗碼。先執行RS指令且一直保持有效,然后在一個掃描周期內,把數據緩沖區的數據存入收發數據緩沖區中。傳送數據完畢后,使M8122為ON持續一個掃描周期,執行發送數據請求。 6、再強調一下,你一定要去看李金誠編寫的《PLC模擬量與通信控制應用實踐》。先把基礎知識學好,再實踐! 7、最后一點強調:使用485通信時,應采用四線制的連接方式。由于RS指令是同時執行數據的收發工作,導致二線制連接方式容易收到反射回來的發送數據,既使加上終端電阻也不能防止這種情況發生。 |
---|---|
|
zhangqi_1234
級別: 略有小成
|
PLC錯誤指示燈閃爍,就查看M8063是否為ON,如果是,讀取D8063的錯誤代碼信息,再看手冊上該錯誤代碼代表是哪種錯誤。 |
---|---|
|
lin10663
Ivan
級別: VIP會員
|
不用試了~~那會不成功 除非你有MB卡~~BD卡玩死你 校驗碼會有問題 |
|
---|---|---|
|
zhangqi_1234
級別: 略有小成
|
我曾經做過FX2N+FX2N-485BD與三菱變頻器E740的MODBUS-RTU通信,期間經歷了很多波折,最終實現了通信。FX3如果使用FX3U-ADP-MB卡,要簡單一些,不用去專門編寫CRC校驗碼程序。這里有個規律:編程復雜的,硬件成本要低一些,編程簡單的,硬件成本要高一些。另外更正一下,如果PLC出錯指示燈閃爍,要先看D8004的內容,如果內容是8063,再看D8063的內容。 |
---|---|
|