說明
編程時,遇到困難,選中控件按【F1】
控件視圖放大:ctrl+鼠標滾輪
控件寬度放大:鼠標右鍵》選項》LAD》寬度155
【I】輸入
200smart 上限 i0.0~i31.7 0~255【256個輸入點】
i0.0~i31.7 八進制 【布爾 bool 】
ib0~ib127 【單字節】 8bit
iw0~iw127 【雙字節】 16bit
id0~id127 【4字節】 32bit
【Q】輸出
q0.0~q31.7 八進制 【布爾 bool 】
qb0~qb127 【單字節】
qw0~qw127 【雙字節】
qd0~qd127 【4字節】
可以用傳送指令,把寄存器值映射到輸出
注意輸出雙線圈問題?以最后一條邏輯為準。
【1】置位 復位解決雙線圈問題
【2】M0對應Q0.0輸出。M的.0到.7用于q0.0輸出代替。最后M0.0~M0.7并聯,再輸出Q0.0
【M】輔助觸點
200smart,上限 m0.0~m31.7
m0.0~m31.7 八進制 【布爾表示法】
mb0~mb1 【單字節】 8bit
mw0~mw2 【雙字節】 16bit
md0~ md4 【4字節】 32bit
【S】狀態點
200smart,上限 S0.0~S31.7
【1】用set進入s0.1
【2】SCR S0.1 開始子循環
【3】SCRT S0.2 跳轉S0.2條件
【4】SCRE 子程序結尾處
【R】5 復位S狀態5個點【主程序】 s0.0做全部結束用
只有S0.1置位,才會運行這個程序段。 仍然有雙線圈問題。用 (置位復位)線圈
【V】用戶寄存器
取出VW199是VB199和VB200
排序 VW199后VW201后VW203 每次加16bit
排序 VD199 后VW203后VW207 每次加32bit
B 8bit
W 16bit
D 32bit
v0.0~v999.7 八進制 // 最大 V24575.7
vb0~vb24575 單字節 8bit //最大 VB24575
vw0~vw2 雙字節 16bit
vd0~ vd4 4字節 32bit
【沿指令】上升沿
——|P|—— 上升沿
——|N|—— 下降沿
跟三菱有區別,需要串聯在【開關量】后面
【位指令】置位,復位
表示:置位8個bit,從q0.0~q0.7都置位 1
(S) 置位
(R) 復位
——|NOT|—— 取反輸出
【定時器】
最小從 T32 開始
跟三菱有區別:
T000~T199 100ms
T200~T245 10ms
T246~T249 1ms 累計【電容保持】滿電10天
T250~T255 100ms累計【電容保持】
電位器:
VR1:D8030 // 0~255值 【MUL D8030 K10 D0】 // D0 = D8030 x 10;
VR2:D8031 // 0~255值 ()T0 D8030 定時器T0直接用d8030的值
【步進指令】順序指令
【注意】任有雙線圈問題。用set規避,程序只隔離輸入。
【1】先置位進入步進程序
【2】SCR 程序環開始
【3】SCRT 程序跳出
【4】SCRE 程序環結束
【中斷】
ENI 總開
DISI 關
RETI 返回,中斷事件程序內部結束
ATCH 中斷配置 【int中斷程序,EVNT中斷觸發源】
SM34 時基1ms【范圍1~255ms】
SM35
【運動】
ST60有4路 100KHz 軸
【1】軸選用 AXIS0_CTRL 常通
【2】軸使能 AXIS0_DIS 常通
【3】點動 AXIS0_MAN
【4】回零 AXIS0_RSEEK 上升沿
【5】定位 AXIS0_GOTO 上升沿【位置,速度,0絕對/1相對,停車】
【6】
臺達: 公共端:35 【DC24v】 方向:39 脈沖:43 恢復出廠:P2-08=10 模式:P1-01=00 02 03 //高電平101 低電平001 急停:P2-17=121 右限位:P2-15=122 左限位:P2-16=123 分子:編碼器分辨率 分母:單圈脈沖數 DI定義:P2-10~17 DO定義:p2-18~22
【曲線運動】
曲線最多32條
曲線運動 AXIS0_RUN 第1條坐標值用0,第2條坐標值用1,第3條坐標值用2
【TCP】
向導》》》》》 Get 和 Put
【Req】 連接請求【上升沿】
【Connect】連接開關
【RW】 0 = 讀取,1 = 寫入
【Addr】 【Count 】
00001 至 09999(DO) 1 至 1920 位
10001 至 19999(DI) 1 至 1920 位
30001 至 39999(AI)只讀 1 至 120 字 // aw120
40001 至 49999(reg) 1 至 120 字
400001 至 465535 1 至 120 字
【DataPtr】 數據包指針,如 &VB1500
【Connect】 連接開關【置位1】
【IP_Port】 開放端口,如 502
【MaxIQ】 最大io點 各256點
【MaxAI】 地址 3xxxx 的字輸入 (AW) 數設置為 0 至 56。值 0 表示禁用【模擬量輸入】
【MaxHold】 4區寄存器個數。
【HoldStart】 數據包指針,如 &VB1200
【POU】程序
可以把子程序做成FB塊給其他程序用。
【庫】》【創建庫】》先修改庫名,再添加組件
L是局部參數,只能60字節,16個。
【指針】32bit
【地址】以字節為單位。地址是32bit
【 & 】取地址,基礎偏移 &VB6 取VB6的地址,
取地址必須用【雙字32bit】mov_dw
【 * 】解地址,取值 *VD1234 // vb6+3是vb9
【MOV_D】*VD1234表示VD9開始
【MOV_W】*VD1234表示VW9開始
【MOV_B】*VD1234表示VB9開始
總結:如取出的地址2,實際上是常數,MOV的bwd決定是VB2還是VW2
vb6加3后是vb9
9后面用mov_D 就是 vd9
9后面用mov_W 就是 vw9
9后面用mov_B 就是 vb9
VB0的值,給VB2000
指針還用到【整體移動】的功能,BLKMOV
【缺陷】
C語言的分支輸出,不會影響結果。但是PLC不行,它以最后結果為準。
解決辦法是讓程序不運行。可以用【子程序】【順序SCR】【M點過渡】
雙線圈問題:可以用子程序解決。
【字符串】
字符串:第1字節:字節總長度。 //一個漢字,2個字節
第2字節開始:字符串內容。
【結束】后面都是未使用的字節,值都是16#00 【'$00'】
跟數組一樣,下標 0 最高位
VW200實際要理解成 V200 取W16bit出來
VB200跟VW200前8bit是重疊的。
vw199取出來的是VB199和VB200
【】