有的朋友可能看出来了,上图是weiwxsir朋友以前发表的三菱FX2N_PLC通过FX2N-485-BD与台达VFD-M的《单独模拟量》频率连续写入的通讯程序。本人琢磨该程序经修改后得到实践,正考虑投入应用。在此感谢weiwxsir和“工控人家园”及各位高手!以下是我的理解:
VFD-B说明书中关于“偵誤值”这样描述:
“ASCII 模式的檢查碼(LRC Check)由Address 到Data Content 結束加起來的值。如:
01H+03H+21H+02H+00H+02H=29H,然後取2的補數=D7H”。
关于“2的补数”,记得老师说可以这样算得:
就以“29H”为例:
算法一:
29H=10 1001(BIN)
0010 1001 不足8位前面补零
1101 0110 (0、1变换)即1的补数=D6H
1101 0111 再加1即2的补数=D7H
算法二:(8位系统中,BIN最大为1111 1111)
K256=1 0000 0000(BIN)-10 1001(29H)
=1101 0111(D7H)
在上图中:RS发送D10~D26的内容,D50 KO表示不接收。
D10 起始符 STX(3AH)
D11 变频器位址
D12 变频器位址
D13 功能码
D14 功能码
D15 参数地址
D16 参数地址
D17 参数地址
D18 参数地址
D19 数据内容
D20 数据内容
D21 数据内容
D22 数据内容
D23 LRC侦误值
D24 LRC侦误值
D25 结束符 回车CR(0DH)
D26 结束符 换行LF(0AH)
而图中第89~104步得到8楼的指点,终于明白这是变址寄存器Z的妙用啊!原来这样就算出了D201~D206的总和。在此特别感谢“王西”朋友!下面的RAR附件是我修改后的FX2N与VFD-B的通讯程序,VFD-B与VFD-M的参数地址是一样的。调试结果:
X000正转启动
X001反转启动
X002连续减速
X003连续加速
没有选择正反时为停止。
开机写入初始频率为30Hz。可能因程序还是一点点冲突,先加速后启动变频器有时会报“cE”代码,但是如果变频器先在RUN中,则连续加减速都没有任何问题,且可以自由切换正反转。
又如果把开关写在触摸屏中操作(因屏的窗口一次触摸只能接受一个位置的指令,把X2、X3做成自动复位按钮),这个程序完全是可以应用了.
注:台达VFD-B/M变频器参数位址2000H中Bit0~5各位变化的定义:
Bit 5 4 3 2 1 0 Hex 功能
0 0 0 0 0 1 =01H 停止
位0 0 0 0 1 0 =02H 启动
状0 0 0 0 1 1 =03H JOG运行
态0 1 0 0 1 0 =12H 正转
1 0 0 0 1 0 =22H 反转
1 1 0 0 1 0 =32H 改变方向
VFD-B与FX2N通讯(附注释).rar (12 K) 下载次数:5462 [ 此贴被zhong1946在2007-12-16 21:27重新编辑 ]