【導讀】本文介紹的是基于COMX和STM32的機器人伺服控制器電路設計解決方案,先為大家介紹COMX模塊的功能及結構,然后講解基于FSMC的接口電路來控制COMX的設計。
設計了基于COMX和STM32的機器人伺服控制器解決方案。首先介紹了COMX模塊的功能及結構,然后設計了基于FSMC的接口電路來控制COMX。系統采用實時工業以太網EtherCAT協議作為機器人伺服系統的底層協議,同時構建伺服從站控制器。實時以太網技術簡化了一般總線的互操作性和實時性等方面的問題,能滿足控制網絡傳輸的實時性要求,EtherCAT工業以太網技術以其網絡實時性高、速度快、拓撲結構靈活等優點得到廣泛關注。本控制器采用德國赫優訊公司開發的嵌入式實時以太網模塊COMX來完成EtherCAT通信的功能,采用STM32為主控制器,由STM32來控制電機和COMX的工作流程。
硬件電路模塊
本伺服控制器主要用于機器人伺服節點通訊、關節電機的控制、I/O控制以及傳感信息的采集。主要硬件由COMX和STM32來組成,其中COMX負責EtherCAT通信,STM32采用FSMC機制來讀寫COMX;STM32是從站的伺服控制器主控芯片,主要進行電機控制和A/D、D/A模塊的控制,以及負責管理COMX模塊的運行流程。其中伺服通信功能是基于EtherCAT協議進行組網來達到各模塊互聯和數據交換的目的,這樣便于伺服節點的擴展和硬件結構的設計;在電機控制上采用RS485接口控制SR518數字舵機;其中I/O口用于基本的輸入輸出功能;A/D通道可以連接傳感設備用于機器人的感知,D/A通道用于對語音、電流等模擬量的輸出;RS232是開發過程中的調試接口。
圖1.硬件電路圖
STM32采用FSMC機制控制COMX,將COMX映射到STM32的內存空間中,對COMX的讀寫方式和讀寫SRAM相同。 FSMC是集成在STM32F系列芯片上的外部存儲器控制接口,FSMC能控制兩種存儲器: NOR Flash/SRAM控制器、 NAND Flash/PC卡控制器。嵌入式模塊COMX通過一個50PIN插槽來連接主控芯片,插槽包含了與主機通信必備的控制線總線、16位數據總線和14位地址總線等;COMX與STM32的硬件電路圖如圖3所示,由電路圖可知COMX內存映射到FSMC的第一個存儲塊的第四個分區中,起始地址為 0x6C000000,并且采用8位數據寬度來讀寫DPM存儲區。