--- lang: zh-tw --- TwinCAT 電子凸輪手冊 === ## 簡介 本文件實現TwinCAT電子凸輪使用配置與操作方法。 <i class="fa fa-pencil fa-fw"></i> 作者:林建安 10973110@gm.nfu.edu.tw --- ## 目錄 [TOC] --- ## 系統環境配置 ### Mircrosoft Visual Studio 安裝 - 安裝版本: Visual Studio Professional 2015 - 軟體金鑰: HMGNV-WCYXV-X7G9W-YCX63-B98R2 - [安裝檔下載](https://drive.google.com/file/d/1yaLBa0s1NXx-FeFxjTw8GUOFfxjZ3HVb/view?usp=sharing) - [安裝過程參考資料](https://www.itread01.com/content/1541589849.html) ### Beckhoff TwinCAT 安裝 - 安裝版本: v3.1 4024.4 - [安裝檔下載](https://drive.google.com/file/d/1f73-0XfsjnV4AqDWOLb0BhdQbwRJ70Oq/view?usp=sharing) - [官方安裝教學](https://infosys.beckhoff.com/english.php?content=../content/1033/tc3_installation/447485323.html&id=) ## 建置TwinCAT專案 1. 打開 ==TwinCAT XAE Shell==,並點擊==New TwinCAT Project==創建專案。 ![](https://i.imgur.com/ShgzdjS.png) - 載入EtherCAT設備 1. 為您的網路介面卡設備安裝TwinCAT驅動程式,點擊上方導航列==TwinCAT > Show Reaktime Ethernet Compatiable Devices== ![](https://i.imgur.com/aooOaYH.png) 2. 點擊==Compatiable devices(表示支援TwinCAT功能)== 下方的網卡,再點擊==Install==進行安裝,安裝完即可關閉視窗。 ![](https://i.imgur.com/iYTlf8x.png) 2. 展開左方選單 ==I/O== ,右鍵點擊==Device==下內==Scan==進行設備掃描 ![](https://i.imgur.com/gdkz8wg.png) 3. 勾選已連結設備,並按ok ![](https://i.imgur.com/adkZWbv.png) > 此處EtherCAT設備為馬達驅動器 4. 此時會跳出 ==Scan for boxes== ,點選是 ![](https://i.imgur.com/asUv6aT.png) > 此動作是偵測該EtherCAT裝置下連接的設備(如:馬達) 5. 搜尋到馬達後,選擇馬達類型,選擇NC並按OK ![](https://i.imgur.com/B7bsRVq.png) :::info :bulb: **提示**: Active Free Run一律選擇否。 ::: 6. 此時可見左方選單已完成馬達與驅動器相關配置。 ![](https://i.imgur.com/0fInF3F.png) --- ## 建置PLC專案 1. 右鍵點擊左方選單==PLC==,選擇==Add New Item== ![](https://i.imgur.com/JWn0cqD.png) 2. 選擇==Standard PLC Project==,並點擊==Add== ![](https://i.imgur.com/eSN4ZH6.png) 3. 新增完畢後,可於左方看見PLC專案樹狀清單 ![](https://i.imgur.com/hpxc2nr.png) :::info 小提示 :mega: - References: PLC專案所載入的函示庫 - DUTs: 結構、Enum定義 - GVLs: 全域變數定義 - POUs: PLC程式碼定義 ::: ### 載入所需PLC函示庫 1. 右鍵點擊左方選單==References==,選擇==Add Library== ![](https://i.imgur.com/Mh4fAQ2.png) 2. 搜尋==MC2==,並依序新增==Tc2_MC2==以及==Tc2_MC2_Camming== ![](https://i.imgur.com/ijoSC7V.png) 使用電子凸輪功能 === ## 方法1-使用PLC程式使用電子凸輪 ### 配置電子凸輪主從軸 #### 新增主軸與從軸的變數 1. 點擊左方==PLC > CamExample > CamExample Project > POUs > MAIN(PRG)==,並在新增下方程式碼 ```typescript= master,slave: AXIS_REF; ``` ![](https://i.imgur.com/vBc2Don.png) 2. 點擊上方工具列==Activate Configuration== ![](https://i.imgur.com/cJDNaWs.png) 3. 並點擊OK ![](https://i.imgur.com/6UE7D0I.png) 4. 是否啟動Run模式,點擊取消,此處只為了將變數更新 ![](https://i.imgur.com/wD1GiaT.png) #### 配置從軸 1. 雙擊==Motion > NC-Task 1 SAF > Axes > Axis 1==,切至==General==分頁,並將馬達名稱改為==slave==,此馬達為實際透過Ethernet連接的馬達 ![](https://i.imgur.com/pGNhxD3.png) 2. 切至==Setting==分頁,依序點選==Link To PLC==,馬達軸選擇==MAIN.slave==,並按OK ![](https://i.imgur.com/Xx1ehmt.png) :::info :bulb: **提示**: 此處若無出現變數可以選取,請確認新增全域變數後是否有執行Activate Configuration ::: #### 新增主軸 1. 右鍵點擊==Axes==,並選擇==Add New Item== ![](https://i.imgur.com/zr4WyA0.png) 2. 名稱取為==master==,並按OK ![](https://i.imgur.com/1Ity5sc.png) 3. 切至==Setting==分頁,依序點選==Link To PLC==,馬達軸選擇==MAIN.master==,並按OK ![](https://i.imgur.com/YOiVj8R.png) ### 新增電子凸輪程式 #### 新增凸輪狀態宣告 1. 右鍵點擊==DUTs==,選取==Add==選單下的==DUTs== ![](https://i.imgur.com/oqNSCoW.png) 2. 名稱==camming_state==,Type選取==Enumeration==,並按下Open,此宣告用來判斷凸輪狀態 ![](https://i.imgur.com/iGYMVXw.png) 3. 並將下方程式碼貼於右方程式編輯區 ```typescript= TYPE camming_state : ( state_init, state_power, state_forward, state_pre_table1, state_camming1, camming_status, state_error, state_reset )INT; END_TYPE ``` ![](https://i.imgur.com/1wbIWxB.png) #### 新增凸輪功能模組輸出接口變數 點擊左方==PLC > CamExample > CamExample Project > POUs > MAIN(PRG)==,並在新增下方程式碼 ```typescript= camming_state: camming_state; CamInOut, CamOutOut, CamTableSelectOut, MoveMasterOut, MoveSlaveOut, ResetMasterOut, ResetSlaveOut: ST_McOutputs; {*用於綁定模組輸出接口*} ``` 完成後如下圖所示,並按下==Ctrl+S==儲存 ![](https://i.imgur.com/kH914rb.png) #### 新增 [MC_CamIn](https://infosys.beckhoff.com/english.php?content=../content/1033/tcplclibmc2_camming/460403723.html&id=) 1. 右鍵點擊==POUs==選單下的==MAIN(PRG)==,選取==Add==選單下的==Action== ![](https://i.imgur.com/xMOQvvx.png) 2. 名稱==camming==,Language選取==FBD==,並按下==OPEN== ![](https://i.imgur.com/4ptp561.png) 3. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/PATyI1S.png) 4. 選取==Tc2_MC2_Camming->POUs->General->MC_CamIn==,並按下OK ![](https://i.imgur.com/ER22D9J.png) 並將圖塊名稱更改為==CamIn==後,跳出自動宣告視窗,並點擊ok,如下圖所示。 ![](https://i.imgur.com/lr8hCYd.png) 5. 依下圖完成==CamIn==方塊輸出與輸入定義 ![](https://i.imgur.com/9V3PXvm.png) #### 新增 [MC_CamTableSelect](https://infosys.beckhoff.com/english.php?content=../content/1033/tf5050_tc3_nc_camming/1002328715.html&id=) 0. 於空白處按右鍵,並點擊==Insert network==新增空白格子 ![](https://i.imgur.com/FIQIvma.png) 1. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/TfkcGmY.png) 2. 選取==Tc2_MC2_Camming->POUs->General->MC_CamTableSelect==,並按下OK ![](https://i.imgur.com/KbWOWjO.png) 並將圖塊名稱更改為==CamTableSelect==,並跳出自動宣告視窗,如下圖所示。 ![](https://i.imgur.com/QWtGtLi.png) ![](https://i.imgur.com/YgtwcKG.png) 3. 依下圖完成==CamTableSelect==方塊輸出與輸入定義 ![](https://i.imgur.com/6noH4Vy.png) #### 新增 [MC_CamOut](https://infosys.beckhoff.com/english.php?content=../content/1033/tf5050_tc3_nc_camming/1002381451.html&id=) 0. 於空白處按右鍵,並點擊==Insert network==新增空白格子 ![](https://i.imgur.com/0Qokg6E.png) 1. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/WMNrs3y.png) 2. 選取==Tc2_MC2_Camming->POUs->General->MC_CamOut==,並按下OK ![](https://i.imgur.com/AEPxdWN.png) 並將圖塊名稱更改為==CamOut==,並跳出自動宣告視窗,如下圖所示。 ![](https://i.imgur.com/9Qz2UYF.png) ![](https://i.imgur.com/elQBaLx.png) 3. 依下圖完成==CamOut==方塊輸出與輸入定義 ![](https://i.imgur.com/Ba2RBv8.png) ### 新增馬達運動函式 #### MC_MoveAbsolute 1. 右鍵點擊==POUs==選單下的==MAIN(PRG)==,選取==Add==選單下的==Action== ![](https://i.imgur.com/xMOQvvx.png) 2. 名稱==move_m_s==,Language選取==FBD==,並按下==OPEN== ![](https://i.imgur.com/oyOKqFU.png) 3. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/PATyI1S.png) 4. 選取==Tc2_MC2->POUs->Motion->Point To PointMotion ->MC_MoveAbsolute==,並按下OK ![](https://i.imgur.com/9uojv8g.png) 並將圖塊名稱更改為==MoveAbsoluteSlave==,並跳出自動宣告,如下圖所示。 ![](https://i.imgur.com/fJUFpeI.png) 5. 依下圖完成==MoveAbsoluteSlave==方塊輸出與輸入定義 ![](https://i.imgur.com/byH6alF.png) #### MC_MoveVelocity 0. 於空白處按右鍵,並點擊==Insert network==新增空白格子 ![](https://i.imgur.com/CkI5zX5.png) 1. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/8xmb50t.png) 2. 選取==Tc2_MC2->POUs->Motion->MC_MoveVelocity==,並按下OK ![](https://i.imgur.com/De2bRYk.png) 並將圖塊名稱更改為==MoveVelocityMaster==,並跳出自動宣告視窗,如下圖所示。 ![](https://i.imgur.com/A2hgJzr.png) ![](https://i.imgur.com/PPWYUF1.png) 3. 依下圖完成==MoveVelocityMaster==方塊輸出與輸入定義 ![](https://i.imgur.com/EBsWBLM.png) --- ### 新增馬達啟動函式 0. 點擊==POUs==選單下的==MAIN(PRG)==,定義==MC_POWER==變數功能,如下圖所示 ```typescript= MC_Power: MC_Power; ``` ![](https://i.imgur.com/RW5iDNU.png) 1. 右鍵點擊==POUs==選單下的==MAIN(PRG)==,選取==Add==選單下的==Action== ![](https://i.imgur.com/CHhio0v.png) 2. 名稱==power==,Language選取==ST==,並按下==OPEN== ![](https://i.imgur.com/LtXeNqt.png) 3. 複製下方程式碼貼於程式編輯區 ```typescript= MC_Power(Axis:= master, Enable:= TRUE, Enable_Positive:= TRUE, Enable_Negative:= TRUE, Override:= 100); MC_Power(Axis:= slave, Enable:= TRUE, Enable_Positive:= TRUE, Enable_Negative:= TRUE, Override:= 100); ``` ![](https://i.imgur.com/l19BjA9.png) --- ### 新增馬達重置函式 #### MC_Reset(Slave) 1. 右鍵點擊==POUs==選單下的==MAIN(PRG)==,選取==Add==選單下的==Action== ![](https://i.imgur.com/Xh0L318.png) 2. 名稱==reset==,Language選取==FBD==,並按下==OPEN== ![](https://i.imgur.com/EzZWWFq.png) 3. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/oZSMLF6.png) 4. 選取==Tc2_MC2->POUs->Administrative->Axis Functions->MC_Reset==,並按下OK ![](https://i.imgur.com/bVcqWVg.png) 並將圖塊名稱更改為==ResetSlave==,並跳出自動宣告視窗,如下圖所示。 ![](https://i.imgur.com/QitrCEF.png) ![](https://i.imgur.com/COPKT9L.png) 5. 依下圖完成==ResetSlave==方塊輸出與輸入定義 ![](https://i.imgur.com/0dmvhSA.png) --- #### MC_Reset(Master) 0. 於空白處按右鍵,並點擊==Insert network==新增空白格子 ![](https://i.imgur.com/BFJGNLN.png) 1. 右鍵點擊程式編輯區,選擇==Insert Box== ![](https://i.imgur.com/h145g0G.png) 2. 選取==Tc2_MC2->POUs->Administrative->Axis Functions->MC_Reset==,並按下OK ![](https://i.imgur.com/bVcqWVg.png) 並將圖塊名稱更改為==ResetMaster==,並跳出自動宣告視窗,如下圖所示。 ![](https://i.imgur.com/poAF01o.png) 3. 依下圖完成==ResetMaster==方塊輸出與輸入定義 ![](https://i.imgur.com/pGYbhkl.png) --- ### 新增電子凸輪表 0. 於主程式內定義凸輪表參數,點擊==MAIN(PRG)==並新增下列程式碼至變數宣告區,按下==Ctrl+S==存檔,完成後如圖所示。 ```typescript= Table: ARRAY[1..4] OF MC_MotionFunctionPoint; ``` ![](https://i.imgur.com/MvMRTyz.png) 1. 右鍵點擊==POUs==選單下的==MAIN(PRG)==,選取==Add==選單下的==Action== ![](https://i.imgur.com/bUgoj6w.png) 2. 名稱==table_point==,Language選取==ST==,並按下==OPEN== ![](https://i.imgur.com/V8fE0oh.png) 3. 複製下方程式碼貼於程式編輯區 ```typescript= CamTable.ArraySize:=SIZEOF(Table); CamTable.NoOfColumns:=1; CamTable.NoOfRows:=4; CamTable.pArray:=ADR(Table); CamTable.TableType:=MC_TABLETYPE_MOTIONFUNCTION; (*Link Mode*) Table[1].FunctionType:=MOTIONFUNCTYPE_POLYNOM7_MM; Table[1].MasterPos:=0; Table[1].SlavePos:=250; Table[1].PointIndex:=1; Table[1].PointType:=MOTIONPOINTTYPE_TURN; Table[2].FunctionType:=MOTIONFUNCTYPE_POLYNOM5; Table[2].MasterPos:=135; Table[2].SlavePos:=24; Table[2].PointIndex:=2; Table[2].PointType:=MOTIONPOINTTYPE_REST; Table[3].FunctionType:=MOTIONFUNCTYPE_POLYNOM7_MM; Table[3].MasterPos:=225; Table[3].SlavePos:=0; Table[3].PointIndex:=3; Table[3].PointType:=MOTIONPOINTTYPE_REST; Table[4].FunctionType:=MOTIONFUNCTYPE_POLYNOM7_MM; Table[4].MasterPos:=360; Table[4].SlavePos:=250; Table[4].PointIndex:=4; Table[4].PointType:=MOTIONPOINTTYPE_TURN; ``` ### 新增PLC主程式 1. 雙擊左方==MAIN(PRG)== ![](https://i.imgur.com/33bawZD.png) 2. 新增兩個變數儲存馬達位置,如下所示,再確保程式碼內容與下方相同,若不相同請確認步驟是否有誤。 ```typescript= master_actpos,slave_actpos: LREAL; ``` ```typescript= PROGRAM MAIN VAR master,slave: AXIS_REF; camming_state: camming_state; CamInOut, CamOutOut, CamTableSelectOut, MoveMasterOut, MoveSlaveOut, ResetMasterOut, ResetSlaveOut: ST_McOutputs; {*用於綁定模組輸出接口*} CamIn: MC_CamIn; CamTableSelect: MC_CamTableSelect; CamTable: MC_CAM_REF; CamOut: MC_CamOut; MoveAbsoluteSlave: MC_MoveAbsolute; MoveVelocityMaster: MC_MoveVelocity; MC_Power: MC_Power; ResetSlave: MC_Reset; ResetMaster: MC_Reset; Table: ARRAY[1..4] OF MC_MotionFunctionPoint; master_actpos,slave_actpos: LREAL; END_VAR ``` ![](https://i.imgur.com/qwALwvk.png) 3. 複製下方程式碼貼於右邊下方區塊 ```typescript= master(); {* 更新主軸資訊*} slave(); {* 更新從軸資訊*} power(); {* 馬達使能*} camming();{* 電子凸輪程式*} reset(); {* 馬達重設*} move_m_s(); {* 馬達移動*} table_point(); {* 凸輪表*} {* 狀態控制*} CASE camming_state OF {* 初始化 *} state_init: MoveVelocityMaster.Execute := FALSE; ResetMaster.Execute := FALSE; ResetSlave.Execute := FALSE; CamIn.Execute := FALSE; CamOut.Execute := FALSE; camming_state:=state_power; {* 馬達使能 *} state_power: IF master.NcToPlc.StateDWord.0 AND master.NcToPlc.StateDWord.0 THEN camming_state := state_forward; ELSIF master.Status.Error OR slave.Status.Error THEN camming_state := state_error; END_IF {* 馬達作動 *} state_forward: MoveVelocityMaster.Execute:=TRUE; MoveAbsoluteSlave. Execute:=TRUE; IF master.Status.Moving AND MoveAbsoluteSlave.Done THEN MoveVelocityMaster.Execute:=FALSE; MoveAbsoluteSlave.Execute:=FALSE; camming_state:=state_pre_table1; END_IF IF master.Status.Error OR slave.Status.Error THEN camming_state := state_error; END_IF {* 凸輪表初始化 *} state_pre_table1: CamTableSelect.Execute:=TRUE; camin.CamTableID:=1; IF CamTableSelect.Done THEN camming_state:=state_camming1; CamTableSelect.Execute:=FALSE; END_IF IF master.Status.Error OR slave.Status.Error THEN camming_state := state_error; END_IF {* 電子凸輪作用 *} state_camming1: camin.Execute:=TRUE; IF camin.InSync THEN camin.Execute:=FALSE; camming_state:=camming_status; END_IF IF master.Status.Error OR slave.Status.Error THEN camming_state := state_error; END_IF {* 更新馬達資訊 *} camming_status: master_actpos:=master.NcToPlc.SetPos; slave_actpos:=slave.NcToPlc.SetPos; IF master.Status.Error OR slave.Status.Error THEN camming_state := state_error; END_IF {* 錯誤處理 *} state_error: CamOut.Execute := Slave.Status.Coupled; (* 先解耦 *) IF not Slave.Status.Coupled THEN IF Master.Status.Error OR Slave.Status.Error THEN camming_state := state_reset; (* 軸報錯需要reset*) ELSE camming_state := state_init;(*若功能塊報錯,不需要reset*) END_IF END_IF {* 重置 *} state_reset: ResetMaster.Execute := TRUE; CamTableSelect.Execute:=FALSE; ResetSlave.Execute := TRUE; IF ResetMaster.Done AND ResetSlave.Done THEN camming_state := state_init; ELSIF ResetMaster.Error OR ResetSlave.Error THEN camming_state := state_init; END_IF END_CASE ``` ![](https://i.imgur.com/FL0fT8V.png) 4. 點選上方工具列==Activate Configuration==進行PLC程式編譯,並按下OK ![](https://i.imgur.com/cGfHxlH.png) 5. 接著出現此確認視窗,此處選擇==確定== ![](https://i.imgur.com/2Is2ZDy.png) 6. 跳至[新增可視化圖表資訊] --- ## 方法2-使用圖形化介面使用電子凸輪 ### 建立電子凸輪表 1. 右鍵點擊左方==Table==選單下的==Add New Item== ![](https://i.imgur.com/PaYzPjF.png) 2. 跳出==Insert Master==視窗,點選OK ![](https://i.imgur.com/AtS9ase.png) 3. 此時會跳出此視窗,說明此凸輪表僅能暫存使用(需有授權才能存檔) ,點選確定 ![](https://i.imgur.com/1ha9QKJ.png) :::warning 此方法所建立的電子凸輪表,專案關閉後即會消失,方法1則不會。 ::: 4. 右鍵點擊左方==Master 1==選單下的==Add New Item== ![](https://i.imgur.com/t6KE9zj.png) 5. 跳出==Insert Master==視窗,點選OK ![](https://i.imgur.com/AZiQWdS.png) 6. 此時會跳出此視窗,說明此凸輪表僅能暫存使用(需有授權才能存檔) ,點選確定 ![](https://i.imgur.com/1ha9QKJ.png) :::warning 此方法所建立的電子凸輪表,專案關閉後即會消失,方法1則不會。 ::: 7. 雙擊==Slave 1==進入關鍵點編輯工具 ![](https://i.imgur.com/CcqxT9q.png) 8. 點擊==Insert Point==於下方紅框中新增四個關鍵點,如圖所示 ![](https://i.imgur.com/GIfOS9P.png) ![](https://i.imgur.com/5G22ipg.png) 9. 並依照下圖指示修改線型與位置 ![](https://i.imgur.com/pqQTNzi.png) 10. 完成後如下圖所示 ![](https://i.imgur.com/P0O523c.png) 11. 雙擊==Master1==,將==Period==打勾,開啟週期循環模式 ![](https://i.imgur.com/lOKT6FY.png) ### 配置主從軸關係 1. 點選上方工具列==Activate Configuration==進行PLC程式編譯,並按下OK ![](https://i.imgur.com/edswBOZ.png) 2. 接著出現此確認視窗,此處選擇==確定== ![](https://i.imgur.com/FLYJJQE.png) 3. 等待數秒後,右上方PLC控制列燈號會亮起,表示編譯完成。 ![](https://i.imgur.com/LpPXQ3H.png) 4. 雙擊==slave==,進入==Parameter==選單,將==Position Lag Monitor==選項改為==FALSE==,再按下==Download== ![](https://i.imgur.com/k2CFt3y.png) 5. 切換至==Online==選單,點選==Set==,並按下==ALL==啟動馬達 ![](https://i.imgur.com/0kb6N5b.png) 6. 將==Target Position==, ==Target Velocity==改為250,並按下綠色執行按鈕,將馬達位置移動到250 ![](https://i.imgur.com/yBiMLZF.png) 7. 將==Master Axis==選為==master==,==Coupling Mode==改為==Cam Profile==,==Table Id==改為1,最後按下==Couple==綁定關係 ![](https://i.imgur.com/uMNtRqy.png) 8. 雙擊==master==,進入==Online==選單,點選==Set==,並按下==ALL==啟動馬達 ![](https://i.imgur.com/g8ngeBw.png) 9. 切換至==Functions==選單,將==Start Mode==改為==Endless==,==Target Velocity==改為100,再按下Start馬達會開始進行電子凸輪運動 ![](https://i.imgur.com/LEG9UKL.png) 10. 按下==Stop==即可停止 ![](https://i.imgur.com/6VTAqSk.png) :::warning 注意,此方法停止後要重新開始,請務必先將slave馬達回歸至250初始位置 ::: 新增可視化圖表資訊 === 1. 右鍵點擊左方選單最上方專案名稱,選取==Add==選單下的==New Project== ![](https://i.imgur.com/9L492SW.png) 2. 專案選擇==TwinCAT Measurement ==,類型選擇==YT Scope Project== ![](https://i.imgur.com/Y0dZRl3.png) 3. 右鍵點擊左方選單==YT Chart==,選擇選單下的==New Axis ![](https://i.imgur.com/beVrPSl.png) 4. 重複上個步驟,完成後如下圖所示 ![](https://i.imgur.com/pEAZYPg.png) 5. 右鍵點擊==Axis Group==,選擇==Rename==,將這個三個Group更名為==pos==, ==vel==, ==acc==,完成後如下圖所示。 ![](https://i.imgur.com/Q88nkWJ.png) ### 配置位置圖表 1. 右鍵點擊==pos==,選擇==Target Browser== ![](https://i.imgur.com/FrQVsG2.png) 2. 依照圖片指示展開==slave==目錄 ![](https://i.imgur.com/EQhBpfg.png) 3. 按住==ctrl==並選取==ActPos==, ==SetPos==,並按右鍵選擇==Add to Scope== ![](https://i.imgur.com/6uFbwN6.png) ### 配置速度圖表 1. 右鍵點擊==vel==,選擇==Target Browser== ![](https://i.imgur.com/qgFFWTP.png) 2. 依照圖片指示展開==slave==目錄 ![](https://i.imgur.com/EQhBpfg.png) 3. 按住==ctrl==並選取==ActVelo==, ==SetVelo==,並按右鍵選擇==Add to Scope== ![](https://i.imgur.com/fBr660f.png) ### 配置加速度圖表 1. 右鍵點擊==acc==,選擇==Target Browser== ![](https://i.imgur.com/YJGeYWz.png) 2. 依照圖片指示展開==slave==目錄 ![](https://i.imgur.com/EQhBpfg.png) 3. 按住==ctrl==並選取==ActAcc==, ==SetAcc==,並按右鍵選擇==Add to Scope== ![](https://i.imgur.com/yihJoaM.png) 電子凸輪運行測試 === 1. 點選上方工具列==Activate Configuration==進行PLC程式編譯,並按下OK ![](https://i.imgur.com/UgBzPMp.png) 若出現此錯誤 ![](https://i.imgur.com/5gmSCdH.png) 請前往TwinCAT安裝目錄 ![](https://i.imgur.com/T8SQfLL.png) 選取==win8settick==,右鍵以系統管理身分執行,重新開機後繼續回到此步驟 2. 接著出現此確認視窗,此處選擇==確定== ![](https://i.imgur.com/2Is2ZDy.png) 3. 等待數秒後,右上方PLC控制列燈號會亮起,表示編譯完成。 ![](https://i.imgur.com/EsXVm45.png) ### 啟動馬達 4. 雙擊==slave==,進入==Parameter==選單,將==Position Lag Monitor==選項改為==FALSE==,再按下==Download== ![](https://i.imgur.com/k2CFt3y.png) 4. 雙擊==master==或是==slave==,並切換至==Online==選單 ![](https://i.imgur.com/c5bgLE4.png) 5. 點擊==Set==,並按下==All==,啟動馬達。 ![](https://i.imgur.com/09l9G0r.png) 6. 重複上兩個步驟,啟動另一個軸。 - 啟動圖表功能 1. 右鍵點擊==YT Chart==,選擇==Stacked Axes==,使圖表堆疊顯示。 ![](https://i.imgur.com/qwqeIiT.png) 2. 點擊右上方錄製按鈕,開始錄製圖表(此時圖表將會繪製馬達數據) ![](https://i.imgur.com/mygqzxv.png) ### 運行電子凸輪 1. 點擊PLC控制列的==Login==按鈕 ![](https://i.imgur.com/JN4i79a.png) 2. 點擊YES下載程式到目標主機 ![](https://i.imgur.com/EcnDFUi.png) 3. 下載完成後,等待數秒,PLC控制列啟動與停止燈號會亮起。 ![](https://i.imgur.com/bGPdc9n.png) 4. 點擊==Start==馬達即開始運作電子凸輪,同時圖表會進行繪製。 ![](https://i.imgur.com/wC8rAuz.png) 5. 停止請點擊==Stop==按鈕 ![](https://i.imgur.com/5wamzzf.png) 6. 停止圖表請按==Stop==按鈕 ![](https://i.imgur.com/CCdEExp.png) # 倍福工業電腦通訊 1. 點選左方選單==System==,於畫面中點擊 ==Choose Target== ![](https://i.imgur.com/EZaEsKJ.png) 2. 並選擇已與電腦連接的TwinCAT 主機,再點選OK ![](https://i.imgur.com/nt9dSR4.png) :::info :bulb: **提示**: 如果主機硬體已確定接線但未出現於選單中,請確認TwinCAT EtherCAT模組是否安裝。 [安裝教學請點我](https://infosys.beckhoff.com/english.php?content=../content/1033/ethercatsystem/1036996875.html&id=) :::