leslie1994
菜鳥努力中
級別: 家園�?�
![]() |
公司是做注射機(jī)機(jī)械手的。 機(jī)械手的系統(tǒng)是單片機(jī)控制的。 還有一個(gè)控制面板。 控制面板可以編制 動(dòng)作的順序。 比如: 主臂下降》延時(shí)2秒》主臂前進(jìn)》主臂上升》側(cè)姿水平。。。。。。 我在想 如果用PLC控制的話, 要做才能做到的HMI上選擇動(dòng)作的順序 然后依次動(dòng)作呢? 以前編的程序都是順序控制的, 但是這種順序自由的沒想過, 哪位大神能給我解答一下呢? |
|
---|---|---|
|
lvpretend
級別: 論壇先鋒
![]() |
這個(gè)與MCC中的自由編輯各電機(jī)啟動(dòng)順序差不多。 你就取PLC中若干個(gè)連續(xù)的存儲(chǔ)區(qū),每個(gè)可能的動(dòng)作分別做一個(gè)唯一的編號,運(yùn)行的時(shí)候去依次解析這些存儲(chǔ)區(qū)就行了。就像PLC系統(tǒng)的工作原理一樣,一步步去解析你的程序代碼。 不難。 |
---|---|
本帖最近評分記錄: |
leslie1994
菜鳥努力中
級別: 家園�?�
![]() |
能具體說說嗎?舉個(gè)例子。 |
|
---|---|---|
|
lvpretend
級別: 論壇先鋒
![]() |
比如,取D1000開始的停電保持位為動(dòng)作存儲(chǔ)區(qū),主臂上升定義為1,下降定義為2,前進(jìn)定義為3,后退定義為4,旋轉(zhuǎn)45度定義為5,旋轉(zhuǎn)90度定義為6,旋轉(zhuǎn)--45度定義為7,旋轉(zhuǎn)--90度定義為8,,,,,延遲時(shí)間定義為1***,1***中***為可設(shè)置的時(shí)間,比如單位為0.1秒,那么最大就可以定義99.9秒,如果需要更大時(shí)間就定義為1****。 在HMI上分步設(shè)置,就像G代碼編程一樣,第一步對應(yīng)D1000,第二步對應(yīng)D1001,,,,,第十步對應(yīng)D1009,,,,, 這樣需要在第一步主臂上升,就把“1”存入D1000;第二步延遲5秒,就把1050(50就是5秒)存入D1001,,,,,,,,, 然后開始運(yùn)行,就從D1000開始,D1000是“1”就讓主臂上升,上升完成后給出一個(gè)步執(zhí)行完成信號,移動(dòng)到D10001,然后是延遲時(shí)間5秒,延遲5秒就是,,,,,, 直到執(zhí)行到D***為0時(shí)表示整個(gè)流程執(zhí)行完,看需要跳轉(zhuǎn)回D1000不。 原理就是這樣,你可以定義得更多。說白了,就是要你使用PLC來定義一個(gè)自己的專用 的簡單的“軟PLC"。 |
---|---|
|
sccgkong
不是每次都會(huì)成功,但是必須每次都有進(jìn)步
級別: 論壇先鋒
![]() |
6樓思路正確,不需要變址寄存器,說白了就是把每個(gè)動(dòng)作用一個(gè)數(shù)字來表示,我以前用過類似方法做這樣的組合動(dòng)作 如你把1,2定義成大臂小臂對應(yīng)兩個(gè)寄存器D1000和D1001 當(dāng)D1000=1時(shí)候表示大臂先動(dòng)作,當(dāng)D1000=2表示小臂先動(dòng)作, 至于是什么動(dòng)作你又可以按照上面的方法設(shè)定 還可以用示教的方法 |
|
---|---|---|
|