基于STM32的CANOpen主站開發
利用STM32的內部CAN模塊進行外部收發器的設計,實現CAN通信接口硬件電路。
在μC/OS-III操作系統上進行相關程序開發,實現CANOpen主站功能,在DS402協議下支持SDO和PDO操作,從而實現對伺服電機的分布式通信控制,取代傳統控制方式,實現更為高效更為簡潔的控制方案。
基于STM32的網絡客戶端開發
利用STM32系列芯片內部網絡模塊進行外部PHY擴展,實現網絡通信硬件電路。
在μC/OS-III操作系統上進行相關軟件程序開發,實現TCP/UDP客戶端功能,軟件任務具備數據上傳和數據接收功能,從而實現模塊采集數據的網絡上傳和服務器下發指令的接收執行。
基于JavaFx的上位機管控系統開發
利用JavaFx插件開發基于Java的桌面應用程序,實現上位機管控系統。上位機可以通過netty框架進行TCP/UDP客戶端的代碼設計,從而簡單便捷的連接服務器,獲取服務器相關數據。同時可以向服務器發送命令和數據,從而達到管理和控制系統中其它模塊的功能。上位機需具備用戶登錄、平臺測試以及特效測試等界面。
基于Linux系統的服務器開發
利用Java開發可跨平臺的服務器程序(可能需要運行在Windows系統上),用于連接和管理各個客戶端模塊,響應和處理各個客戶端請求。服務器程序利用netty框架進行Socket套接字開發,建立TCP服務端監聽端口。服務器還必須能夠讀取Excel或者txt格式文件,用來獲取動作文件信息,以及加載json解析器用來解析json格式姿態信息。
服務器程序能方便的上傳到Linux服務器,并配置Linux服務器各項參數以正確運行服務器程序已經保存各項日志信息到指定位置,方便設備正常維護。
沉浸式影院控制系統結構如圖所示。系統中一臺Linux服務器為核心單元,管理和控制設備其它各個模塊,系統中其它模塊通過交換機組網與服務器通信。系統中各個模塊分別控制各個環節相關硬件設備。其中包括平臺控制模塊、特效控制模塊、總控操作臺模塊、按鈕指示燈模塊、視頻播放器模塊等。
