文章

顯示從 11月, 2023 起發佈的文章

工控板 STM32F103 與網路晶片 DM9000

圖片
        網路上訂購一塊工控板 STM32F103 帶有網路介面,上面的網路晶片型號是 DM9000,過去我主要用 F207 開發網路的功能,這回使用 F103 試試看(降規打怪),MCU 與 DM9000 溝通的介面方式是 FSMC,過去也經常使用,算是熟悉 FSMC 介面。不過開發過程發現,MCU 讀取不到晶片的 Device ID,於是接上邏輯分析儀觀察腳位的變化,檢查是否符合 datasheet 的規定。測試結果,腳位訊號一切滿足規範,便聯絡廠商技術支援。聽對方工程師說,F103 速度(MCU 72MHz)比較慢所以搭配 DM9000 可能會有些問題,後續會再寄一塊新的給我。我當下思考,是否這樣的系統搭配造成良率不佳?還是說硬體設計本身有問題?         12路光耦合的隔離輸入,如下圖所示, XH 2.54 端子台。當輸入訊號為GND,觸發光耦合迴路導通,激發另一端的電晶體導通。輸入訊號只要以 +24V 或 GND 代表切換 On/Off,MCU 便能判斷輸入訊號的準位。         8路光耦合的隔離輸出,如圖 XH 2.54 端子台,MCU 控制腳位的 On/Off 觸發光耦合 IC。當光耦合開關打開時,+24V 會流向下一級的電晶體,同時開啟電晶體導通,因此輸出會導通到 GND。外部接點必須是一個具有負載的點位,無論它是繼電器或是乾濕接點,都是一個帶有電源負載的點位。 利用這塊工控板實作一個 GPS 軌跡追蹤系統,其影片連結如下: https://youtu.be/d_qeJ52fTf0

工廠設備用到的工具:串列資料傳輸轉換為網路通訊

圖片
        工廠生產設備遇到網路化的問題,偏偏產線設備不具有網路端口,這時候可以使用 RS-232 to Ethernet 模組來解決,下圖一所示。有些設備不具有網路,只要將下圖的模組 RS-232 配置設定好後(圖四),設備與模組間就算搞定了,接下來再設定網路模式。 圖一:RS-232 to Ethernet 轉換模組         網路參數的部分,分為 TCP 或 UDP 通訊模式,前者是連線保證(資料不丟失),後者是傳輸不保證(資料可能丟失)。如果是重要數據的傳輸,最好選 TCP 模式。除了通訊模式之外,要事先設定模組當做 server 或者是 client 端,圖二所示。如果做為 server 端,需要設定監聽的埠口,以便讓客戶端連線進來模組。如果做為 client 端,需要設定遠端 server IP 位址與埠口,模組通電後便會自動連線到遠端 server,建立起通訊連線。簡單說,server 角色是被動建立連線,client 角色是主動建立連線。 圖二:TCP 網路模式的參數配置         UDP 的設定就相對簡單了,下圖三所示。沒有所謂的 server 或 client 角色,只要設定本模組的通訊埠口,以及對方的 IP 位址與埠口,模組通電後,資料就會透過埠口互傳了。 圖三:UDP 網路模式的參數配置 圖四:UART 通訊模式的參數配置