PLC基礎篇

PLC 可程式邏輯控制器,有什麼用!?創客工具?


PLC 可程式邏輯控制器 的程式指令介紹1


PLC 可程式邏輯控制器 的程式指令介紹2








27 則留言:

  1. 陳老師您好,

    在台達DVP-PLC編程實作範例 1.7 "上電時參數自動初始化" 的程式如下:
    LD X1
    PLS M10
    LD X1002
    OR M10
    MOV H86 D1120
    MOV K1 D1121
    SET Y0
    ANB
    END

    請問是否可以直接使用 X1 來取代 PLS M10 呢? 又,使用PLS M10是否有其優點呢?
    LD M1002
    OR X1
    MOV H86 D1120
    MOV K1 D1121
    SET Y0
    ANB
    END

    回覆刪除
    回覆
    1. 1.用X0 取代是否可以PLS M10 ,這範例裡面是可以的

      2.PLS M10 跟X10的差別。
      PLS指令的用法,就是導通一個PLC SCAN的時間長度。通常是1ms~10ms

      而X0的導通長度會多少? 每個人的手速不同,基本上還是以100ms為單位在算。

      所以pls m10 跟 x0的差別就在於導通時間,
      pls m10 只會導通一個plc scan周期。(1~10ms)
      而x0,有可能會重覆執行5-10個周期。(100ms)
      如果初始化,連續2個周期會產生問題的話,就不能用x0

      可以去查查LDP/LDF 指令用法,跟PLS有點像。

      刪除
  2. 觀念清楚了,非常感謝老師的詳細解說,謝謝您!!!

    回覆刪除
  3. 老師你好:想請問老師是否可以使用台達的plc與類比模組取得4~20ma值範例嗎?目前手上有台達plc跟類比模組還有2線式壓力計4~20ma但是按照手冊接都錯誤..另外想問一下類比模組跟plc主機串接後就有電源了那類比模組原本上面的24v還要另外接電源給他嗎???不好意思因為新手所以問比較多

    回覆刪除
    回覆
    1. 1.如果有接過電壓(0-5v) a/d 沒問題,接電流型(4-20ma)有問題,通常是沒把I+接到V+
      2.依手冊,模組上的24V是要另外給。
      3.錯誤是什麼錯誤!?
      4.範例,手冊上面都有
      像這個是06AD,也有程式跟接線
      http://www.delta.com.tw/ch/product/em/control/plc/download/manual/DVP06AD-S_I_TC_20060921.pdf

      刪除
  4. 陳前輩您好:

    想請教個問題,目前自學DELTA HMI及PLC,如果沒有實物的硬體,簡單程式寫好了,
    有甚麼方法可以在電腦上進行兩邊程式的結合模擬呢?
    請勞煩指教 感恩

    回覆刪除
    回覆
    1. 目前我知道好像是沒辨法。
      用三菱的可以。

      刪除
    2. 好的 非常感謝前輩的指點~~~謝謝

      刪除
  5. 老師您好,我想請問您有開plc的基礎課程嗎?我有找到歐姆龍有開課,可是公司是用三菱的...

    回覆刪除
    回覆
    1. 其實你已經在公司上班了,我建議用先看公司內的程式,來學習的效率是最高的。

      先裝好軟體好,你們公司有,應該沒什麼安裝問題。
      不想看公司的程式太複雜,可以先看三菱的101例,
      裡面有101個範例,很多模組的使用範例可以學,
      先看手冊範例,再自已寫,交叉學習。

      如果公司有人肯教/可問那就更好囉

      刪除
    2. 好的,謝謝老師!我會努力學習的!

      刪除
  6. 老師你好我現在學modbus用台達28sv通訊rs485-通訊4AD模組通訊程式上有通訊模式直接點modrw....用Rtu
    要讀取類比輸入數據一直都讀不到是否還要纂寫類比程式呢還是差那一段程式要寫一直搞不懂可否提供 感謝老師

    回覆刪除
  7. 看不懂?
    4AD模組是什麼,28sv的擴充模組? 還是什麼?

    回覆刪除
  8. 老師是DVPO4AD 類比轉數位模組 DVP28SV 11T 主機 剛接觸RS485通訊不知如何撰寫

    回覆刪除
    回覆
    1. 我的天丫!我剛看台達的手冊,我嚇壞了!
      我想說就擴充模組,那需要什麼modbus?
      但手冊上真寫了一些modbus的位址......的東西。

      1.如果你是用28sv主軸,右邊裝dvp04ad模組的話,就直接用TO/FROM來讀寫CR#的值就好,
      不必管MODBUS的東西。

      用FROM 讀CR#6~15 應該就有CH1~4的現在值或平均值。
      不然讀CR#0,應該可以讀到機種資訊。


      你可以看「DVP-PLC 應用技術手冊 特殊模組篇 (上冊)」,這裡面有寫。

      =================================
      04AD模組的MODBUS指的是,模組下方的有標+-那個COM接口用的。
      如果你真的要用MODBUS來讀DVP04AD的值,我再寫....

      刪除
  9. 老師我真的要用MODBUS寫這樣才學的會因為我不知要寫這樣程式是需要多少條件我用了之後數據一直沒動過所以我想一定有其必要的條件來起動那些數據回傳給主機

    回覆刪除
  10. 作者已經移除這則留言。

    回覆刪除
  11. 回覆
    1. 這裡寫了modbus的設定步驟:
      https://vkinngworld.blogspot.com/2017/07/modbusplc.html#more
      假設都設定正確,
      可以直接跳到第五步,
      利用電腦來發送資料,看dvp04ad是否會回應。

      模組會回應後,換PLC發出的命令是否正確,也是用PC來收。

      確認兩者都正確回應後,再將PLC跟AD模組接起來,應該就沒問題了。
      ======
      如果對PC發出的命令都沒反應,就是模組的設定有問題了。

      刪除
  12. 回覆
    1. 如果你看了那邊modbus的設定順序,跟測試還是有問題,可以反饋一下。
      看那個步驟沒寫好,我再補一下。

      刪除
  13. 老師您好 請問一下
    三菱的 (=D0 D1) 輸出 Y0
    請問台達PLC 要變成怎麼寫 第一次用台達毫無頭緒 謝謝老師

    回覆刪除
  14. 請問ldp與ldf的差別?

    回覆刪除
    回覆
    1. 如果以下的說明看不懂,建議可以在這個指令後面用一個inc d1 來觀察d1 的變化。
      分別用LDP, LDF, LD
      LDP 是在條件成立時,d1+1,只會加一次
      LDF是在條件由on變off時,才會加一次。如果在on的期間是不+1的
      LD 是在條件成立後,d1就會持續一直+1+1+1

      LDP指令是检测上升沿的触点指令,仅在指定位软元件的上升沿(从OFF改变到ON的时候)时,接通1个扫描周期。
      LDF指令是检测下降沿的触点指令,仅在指定位软元件的下降沿(从ON改变到OFF)时,接通1个扫描周期。

      刪除
  15. 老師你好~~~剛接觸台達PLC modbus~~~如今新手遇到一個問題,我設定RST M1161(設定16bit),我從Modbus slave軟體4x0001位置發送257數值,為什麼D1074位置收到是K1然後在溢位到D1073K1呢?我的設備是ES2~~~感謝老師

    回覆刪除
    回覆
    1. 你應該是用RTU的方式在傳輸,此時看到的D1073/74裡面的值,應該還是BCD碼
      即高8/低8位元,各表示一個值。
      D1073=01H
      D1074=01H
      合併=0101H=257(10進制)

      可以多試其他數值,看是不是如我說的

      刪除