| 本帖最后由 Michael7Chen 于 2016-2-23 09:22 编辑 
 一、項目名稱 :基于M451 直流伺服馬達運動控制器 (閉迴路伺服馬達控制器
 產品名稱: AgonMo  ( Agon Motion Controller )
 note: Agon 為古希臘神話裡的"競賽之神"
 二、系統架構圖
 A. 單軸架構圖
 
 B. 機械手六軸連線架構圖
 
 
 三、視頻展示 ( 六軸機械手控制 )
 
 https://youtu.be/BBiBCgNP7XA
 四、作品實體圖
 
 
 
 AgonMo 連接器功能示意圖:
 
 
 
 五、程式碼及電路圖、硬件規格書、通訊規格書、Gerber files
 
 
 [本設計是 Ready for Production  本人全無保留,公開所有設計資料,請下載的網友投我一票吧! ]
 六、總結:
 目前 Firmware 只完成 Position mode control , 也就是根據Encoder 的位置用 PID理論去定位,對於需要精準定位的設備已足夠使用,
 以下是可以應用範圍:
 
 凡是需要用DC  servo motor 都可以應用。
 
 Notice:  本次因"競賽"而選用M451系列,但因有QEI介面,於Nuvoton 的ARM微處理機最佳選擇應為NUC442,
 而本案用"軟體模擬QEI" 其最高速度最好不要超過 100KHz (中斷處理),也就是說: 如果馬達轉速為3000 rpm,
 其Encoder line 最好低於1000 CPR。
 [ RS485  調適軟件 ]
 PC 端的調適軟件,目前PID值預設為 Performer-MK2 robot, 也可以使用於測試 AgonMo 運作,如下連接:
 
 
 執行軟件之硬體需求: 需有 USB to RS485 的模組,預設在COM1, 執行畫面如下:
 
 
 
 可執行程式碼:
 
 note: 1. 此程式是用 C# 撰寫,source code 較大,無法上傳至新唐的討論區,有需要可向本人索取。
 2. 此程式尚未完成所有功能
 
 本控制器還有未完成部分如下:
 
 1. RC servo mode   (可使用RC servo PWM 訊去控制位置)
 2. Current mode     (定電流控制, 使輸出恆定扭矩)
 3. Speed mode       (利用輸入電壓控制轉速)
 4. Pulse mode        (使用 pulse + CW/CCW 訊號控制,像步進馬達控制模式)
 
 [2016.2.18 Firmware Update]
 Release note:
 1. CAN bus communication
 2. VT100 Terminal server for debug
 說明:
 CAN Bus communication 已完成, Firmware Source Code 如下:
 
 VT100  terminal 報文輸出
 系統會由COM1 (115200,n,8,1) 輸出 VT100 格式化文字如下畫面:
 
 
 ( 需將AgonMo 之COM1 接上PC 並使用Tear Term 在PC 端執行後會看到上面畫面。)
 
 AgonMo CAN通訊協定是與美國 FRC ( First Robotics competition ) "Jaguar馬達控制器" 規格相容,
 http://wpilib.screenstepslive.com/s/4485/m/13503/l/144968-2016-frc-control-system-hardware-overview
 目前尚未提供 Current mode 及 Speed mode , 其他指令都可使用
 這是NI 網站範例 :
 https://decibel.ni.com/content/docs/DOC-8923
 
 這是Open source Library
 http://robotpy.readthedocs.org/en/latest/_modules/wpilib/canjaguar.html
 
 [ 密技 ] PC 模擬器 for AgonMo
 使用個人電腦上開發軟件工具(Visual studio 2013 C++) 做AgonMo 程式碼執行模擬,可使debug 更容易。
 模擬器最主要是解決"邏輯"上問題,例如 CAN bus /RS485 bus 上 Command parsing , 控制程序上問題,錯用
 矩陣問題 (VC ++ 可以自動偵測程式使用了超出邊界矩陣 )...  當然還有其他功能是 Keil-C 沒有的 ...
 
 
 
 在PC 執行畫面 ( console mode )
 
 
 Note:
 1.  需使用Microsoft Visual Studio 2013 Compiler
 2.  程式碼內容大部份是與 AgonMo 的程式共用。
 3.  DC 馬達 及encoder 是用軟體模擬提供。
 PC simulator 硬體需求:
 為達到能實體 連接CAN bus 及 RS485 , 所以使用者必須購入USB to CAN 及 USB to RS485 (RS232)等兩個模組,
 
 
 
 目前支援USB to CAN 是 创芯光电科技  的 USB转CAN USBCAN-2APC simulator source code :
 
 Note: 本案用 Microsoft Visual source safe 來管理程式碼共用,而跨硬體平台,
 我已將 hardware dependent code 模組獨立,這樣才有辦法在個人電腦上執行 MCU 程式碼。
 
 
 [2016.2.22 Hardware Update]
 電路圖更正: QEI 輸入需加 Pull-up 電阻
 
 ====================================================
 AgonMo project 在未來所有更新將會以Open Source / Open Hardware 呈現 ... 請期待
 若有其他問題可直接跟本人聯絡 E-mail: michael.x007@msa.hinet.net
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 |