★中國航空制造技術研究院 劉平凡,鄒方,何昭巖,秦玉波
摘要: 針對邊緣控制器最重要的輸入輸出功能板,本研究在電路設計上采用四 層PCB設計工藝,外引出12-14路IO輸入輸出端子,外接NPN/PNP選擇電路、 Type-C及8路軟排線接口,應用高性價比的樹莓派RP2040微處理器進行核心板接 口通信,設計了功能板控制流程,并基于Python語言通過循環檢測IO端口電平信 息或接收核心板數據來實現IO口的輸入輸出響應。在工程設計上,本研究還兼顧 了功能板的機械尺寸與布局,使其結構緊湊,布局合理。
關鍵詞:數字IO擴展;邊緣計算;四層PCB;微控制器;Python
Abstract: This paper focuses on the development of a digital IO expansion function board of the edge controller. The circuit design adopts a four-layer PCB design process, with 12-14 channels of IO input and output terminals led out, along with external NPN/PNP selection circuit, Type-C and 8-channel flexible cable interface. The high performance and cost-effective Raspberry Pi RP2040 microprocessor is used for core board interface communication, and the control flow of the function board is designed. Based on Python language, the I/O response of the IO port is realized by circularly detecting the level information of the IO port or receiving the data of the core board. The mechanical size and layout of the function board are also considered in the engineering design, resulting in a compact and reasonable layout.
Key words: Digital IO extension; Edge computation; Four-layer PCB; Microcontroller; Python
1 引言
近年來,隨著5G、人工智能、物聯網的發展,數 據呈現爆炸式增長的態勢,對算力、延時提出了更高 要求,能夠在靠近數據源頭位置提供算力服務的邊緣 計算正快速興起[1]。在此之前,云計算已經誕生,為企 業提供了可擴展性、可靠性、安全性和易用性。然而, 云計算并不是完美的,其集中化的特性意味著無論終 端設備(如智能手機)位于何處,數據都需要通過網絡 (如4G蜂窩連接)從終端設備傳輸到云提供商的數據 中心,然后再反向操作,到達終端設備。對于需要快速 傳輸大量數據的應用程序,這可能既緩慢又昂貴,而云 計算的這一缺憾恰恰是邊緣計算的用武之地。作為一種 分布式計算范式,邊緣計算使計算和數據存儲更接近需 要的位置,以提高響應時間和節省帶寬,由此也引出了 邊緣計算的定義—在靠近物或數據源頭的一側,采用網 絡、計算、存儲、應用核心能力為一體的開放平臺,就 近提供最近端服務,具有低延遲、安全、節約成本、高 可靠性等幾大優勢[2]。
正是基于邊緣計算的上述優勢及潛在的應用前景, 中國航空制造技術研究院工業網絡與自動化實驗室自主 開發出了一款專用于邊緣計算領域的終端設備—依邁特 邊緣控制器(E-Mate)。該款邊緣控制器可作為小型 的PLC實現運動控制和過程控制,以及實現IO采集、無 線傳輸、遠程運維、機器視覺、數據庫與邊緣計算等多 種功能,可無縫整合IT與OT,在邊緣側協同遠程工業 云平臺實現產線的智能控制,提高了設備智能化水平。 該款邊緣控制器為全自主國產化設計制作,其CPU、基 板、功能板的選型、設計、繪制及制板焊接,包括外殼 設計制作均為工業網絡與自動化實驗室及國內相關企業 完成。其中功能板部分具有模塊化、輕量化、靈活裝卸的特點,可以應用于各類工業控制設備。本文所介紹的 數字IO擴展功能板作為該邊緣控制器的一個獨立組成模 塊,兼具輕量化與兼容性的特點,采用UART串口通信方 式,支持NPN/PNP模式調節,具有3000V以上的電氣隔 離能力以及充足的GPIO接口。此外,為了適應各類工業 生產現場的控制需求,該款功能板還支持自主編程,是 一款極具通用性和高性價比的工業控制IO擴展功能板。
2 邊緣控制器介紹
該款邊緣控制器采用完全國產化的自研CPU。該 款CPU采用四核Cortex-A53架構,主頻1.5GHz,擁 有2GB DDR3的RAM及8GB eMMC的ROM,工作溫 度-40℃~+85℃,具備工業級運行溫寬,支持絕大部分 當前流行的視頻及圖片格式解碼,具有穩定可靠的工業 級產品性能、低功耗以及豐富的用戶接口等優勢,可搭 載Linux、Android、Ubuntu等操作系統,適用于車 載電子、電力、醫療、工業控制、物聯網、智能終端等 領域[3-4]。
圖1 國產CPU邊緣控制器實物照片
該款國產CPU邊緣控制器的實物照片如圖1所示, 其外部為鋁制金屬外殼,兩端配有塑料固定套,兩側各 有兩組固定自攻螺絲。此外,在鋁制外殼的前端還開有 一排散熱孔。
該款國產CPU邊緣控制器的接口如圖2所示,它擁有 一個RS485接口、一個Debug接口、一個USB3.0接口、 一個HDMI接口。此外,它還具備16路AI輸入和雙網 口,采用24V直流輸入電源,外殼有響應的信息提示燈。 通過集成本文所介紹的數字IO擴展功能板,該款邊緣控 制器可擁有12路IO輸出接口及14路IO輸入接口。同時, 為了滿足更多工業現場的需要,數字IO擴展功能板還提 供了3路3.3V信號輸出接口及1路24V直流電源輸出。
圖2 國產CPU邊緣控制器接口圖示
3 數字IO擴展功能板設計
3.1 工業IO控制
在工業控制系統中,IO控制最接近設備端,面臨 著復雜多樣的工業生產設備環境,除了生產現場的溫 度、濕度、氣壓等環境數據外,還要面臨復雜的電氣環 境。比較常見的IO信號有AI、AO、DI、DO、HSC、 RTD等,工業控制系統的拓撲圖如圖3所示。下面介紹 一下部分工業現場中較為常見的IO信號。
圖3 工業現場拓撲圖示例
(1)AI(Analog Input,模擬量輸入)。將現場 模擬量信號即4—20mA、0—5V、0—10V等電流或電 壓信號,輸入到PLC/ESD中。現場的溫度變送器、壓 力變送器均為AI信號,AI信號接入PLC/ESD后,通過 量程轉化后傳給HMI,用于顯示現場的溫度值、壓力 值,方便監控生產情況。同時需要參與連鎖的AI信號, 由PLC/ESD利用其數據進行邏輯編程。
(2)AO(Analog Output,模擬量輸出)。由 PLC/ESD輸出模擬量信號即4—20mA、0—5V、0— 10V等電流或電壓信號,用于控制現場設備,主要設備 有變頻器,調節閥等。AO信號由HMI人工操作,或者 由PLC/ESD進行邏輯編程(PID調節),自動輸出信號 控制現場設備。
(3)DI(Digital Input,數字輸入信號)。開關 量輸入信號,只有回路閉合與回路斷開兩種狀態。現場 主要設備為閥門的反饋、運動設備的到位情況、安防信 號等。DI信號接入PLC/ESD后,通過HMI反應現場閥 門開關情況、運動設備運轉情況以及是否有安防報警 等。同時需要參與連鎖的DI信號,由PLC/ESD利用其 數據進行邏輯編程。
(4)DO(Digital Output,數字輸出信號)。開 關量輸出信號,由PLC/ESD輸出啟動或停止的信號給 設備,現場主要設備有電磁閥、電機、泵等。需要特別 提醒,一般PLC/ESD的DO模塊回路負載比較小,因此 DO應用一般是由DO驅動繼電器,再由繼電器來驅動現 場設備動作,起到了隔離保護的作用。DO信號由HMI 人工操作,或者由PLC/ESD進行邏輯編程(連鎖), 自動輸出信號控制現場設備[5]。
在制造或工業工廠車間,存在著大量的電噪聲,而 這些環境中潛在的電壓尖峰、接地回路和共模信號極有 可能導致有害的停機時間、操作停止、機械故障和電子 設備損壞。因此,具備隔離性的工業IO控制(DIO)被 廣泛應用于各類生產現場。這種隔離技術被稱為光耦隔 離,即其各個引腳在物理和電氣上相互分離,所有進出 DIO端口的輸入信號都使用光電耦合器封閉光通道中的 光傳輸。因為沒有物理連接,所以需要一個外部小直流 信號來給DIO供電,這使DIO能夠為任何工業應用提供 寬電壓兼容性和實時數據分析/洞察,無論是簡化工廠 自動化流程,還是優化生產線[6]。
目前的工業控制領域中,PLC(Programmable LogicController)被廣泛應用,意為可編程邏輯控制 器,是一種專門為在工業環境下應用而設計的數字運算 操作電子系統。它采用一種可編程的存儲器,在其內部 存儲執行邏輯運算、順序控制、定時、計數和算術運算 等操作的指令,通過數字式或模擬式的輸入輸出來控制 各種類型的機械設備或生產過程。本文所介紹的自研國 產CPU邊緣控制器也是基于此理念開發的。目前市場上 的PLC設備都是高度集成化的,為了適應不同的工業現 場,開發者將各類功能接口全部集成于一塊控制板上, 對一些生產種類較為單一的生產現場并不實用,導致接 口浪費嚴重,性價比偏低。本文介紹的國產CPU邊緣控 制器則是獨創性地采用了模塊化功能區設計,將各類功 能接口壓縮為獨立的功能板,可以根據需要安裝使用。 此外,功能板的UART串口可以兼容各類微控制器及微 處理器,因此并不局限于本款邊緣控制器,具有很好的 通用性。
3.2 IO輸出功能板
3.2.1 基本參數信息
圖4 IO輸出功能板實物照片
表1 功能板主要接口及區域信息
圖5 IO輸出功能板接口示意圖
圖4分別給出了數字IO擴展功能板中的輸出功能板 實物照片及部分主要接口和功能區域信息,圖5給出了 輸出功能板的接口對應示意圖。數字IO擴展功能板中的 輸出功能板為四層PCB制板工藝,在硬件電路組成上, 擁有12個24V直流信號接口、1個24V參考地。此外, 為了滿足多種工業現場的設備控制需求,功能板還提供了1路3.3V/5V的信號接口、1路3.3V/5V電源接口和1路 3.3V/5V參考地,上述接口均采用統一的KF2EDGSR3.5-2*8P規格接線端子。該款功能板具備NPN/PNP模 式調節功能,位于板上的3路排針處,左側對應為PNP 模式,右側對應為NPN模式,采用跳線帽調節;功能 板與控制基板或核心板通過UART串口通信,接口為 8路軟排線接口,分別為功能板提供3.3V/5V及24V電 源、串口通信及參考地。此外,為便于用戶自主設計功 能板控制程序,功能板還提供了一個Type-C接口用于 與微控制器上位機通信及燒錄程序。數字IO擴展功能板 中的輸出功能板如圖4所示,部分主要接口和功能區域 信息見表1,輸出功能板的接口對應示意圖如圖5所示。
3.2.2 軟件設計及運行流程
圖6 RP2040微控制器
圖7 軟件運行流程
該款IO功能板集成了專用微控制器,如圖6所示, 便于用戶自主定制適合各類工控場合的控制軟件,微 控制器型號為RP2040。該款微控制器是樹莓派基金會 于2021年初發布的一款40nm制程的微控制器,具備兩 個M0+處理器內核,最高時鐘可達133MHz。此外,它 擁有多達26個多功能的GPIO,可以與任何外部設備通 信,超低的功耗及微小的尺寸使其在工業控制領域也有 潛力被挖掘[7]。該款功能板的控制軟件程序采用Python 語言開發,其運行流程如圖7所示,功能板串口初始化 后便始終處于循環接收狀態,當接收到核心板或基板的 電平信息后便開始解碼工作,將信息譯為對應IO口的電 平數據,隨后響應至對應IO口,之后掃描全部IO口的 當前電平狀態,譯碼后再次通過串口發送至核心板或基 板。此外,功能板串口循環掃描過程的頻率可根據用戶 需求調節。
3.3 IO輸入功能板
3.3.1 基本參數信息
圖8 IO輸入功能板實物照片
表2 功能板主要接口及區域信息
圖9 IO輸入功能板接口示意圖
與輸出功能板相同,數字IO擴展功能板中的輸入 功能板也是四層PCB制板工藝。在硬件電路組成上,輸 入功能板擁有14個24V直流信號接口、1個24V直流電源 及1個24V參考地,與IO輸出功能板相同,上述接口也 都采用統一的KF2EDGSR-3.5-2*8P規格接線端子。此 外,該款功能板同樣具備NPN/PNP模式調節功能,位 于板上的3路排針處,左側對應為NPN模式,右側對應 為PNP模式,采用跳線帽調節;功能板與控制基板或核心板通過UART串口通信,接口為8路軟排線接口,分 別為功能板提供3.3V/5V及24V電源、串口通信及參考 地。此外,為便于用戶自主設計功能板控制程序,功能 板也提供了一個Type-C接口用于與微控制器上位機通 信及燒錄程序。數字IO擴展功能板中的輸入功能板如圖 8所示,部分主要接口和功能區域信息見表2,輸入功能 板的接口對應示意圖如圖9所示。
3.3.2 軟件設計及運行流程
圖10 軟件運行流程
IO輸入功能板的軟件程序同樣采用Python語言開 發,其運行流程如圖7所示,當功能板串口初始化后, 微控制器以固定頻率循環掃描當前的全部IO口電平狀 態,隨后將電平數據譯為占用信息碼并通過串口發送至 基板,隨后微控制器繼續以該頻率重復上述操作。與輸 出IO功能板相同,輸入IO功能板的電平掃描頻率也可 根據用戶需要調節。此外,基板通信信息碼為該款功能 板預定義,無特殊需要時不需要修改。
4 結束語
本文介紹了由中國航空制造技術研究院工業網絡與 自動化實驗室自主研制開發的通用數字IO擴展功能板和 國產化CPU邊緣控制器以及它們的各類應用參數,隨后 討論了數字IO擴展功能板的接口信息及軟件運行流程。 該款自研工業控制功能板很好地契合了我國工業控制領 域國產化自主化的發展路線,其系統運行穩定,制造成 本低廉,同時,其模塊化、自主定制化的特點也能更好 地滿足不同工業生產現場的邊緣控制需求,為我國邊緣 計算領域提供了一款更高性價比的產品。
作者簡介:
劉平凡(1995-),男,河北唐山人,工程師,碩士, 現就職于中國航空制造技術研究院,從事嵌入式、邊緣 計算、工業網絡與自動化等研究工作。
鄒 方(1965-),男,湖南婁底人,研究員,碩士, 現就職于中國航空制造技術研究院,從事智能制造基礎 技術、系統控制與集成技術、邊緣計算、工業網絡與自 動化等研究工作。
何昭巖(1991-),男,吉林人,工程師,碩士,現就 職于中國航空制造技術研究院,從事嵌入式、邊緣計 算、工業網絡與自動化等研究工作。
秦玉波(1988-),男,河北邯鄲人,高級工程師,碩 士,現就職于中國航空制造技術研究院,從事嵌入式、 邊緣計算、工業網絡與自動化、機器視覺等研究工作。
參考文獻:
[1] 比特網. 邊緣計算到底有多強?這九個應用場景一起來看[EB/OL]. https://baijihao.baidu. com/s?id=1712456558977425551& wfr=spider&for=pc, 2021 - 10 - 02.
[2] 雷鋒網leiphone. 為什么邊緣計算在物聯網中很重要?[EB/OL]. https://baijiahao.baidu.c om/s?id=1685295289230661787& wfr=spider&for=pc, 2020 - 12 - 06.
[3] 劉諾石, 鄒方, 何昭巖, 等. 一種智能防錯的輔助人工作業系統開發與應用[J]. 航空制造技術, 2021, 64 (5) : 89 - 97.
[4] 劉平凡, 鄒方, 何昭巖, 等. 基于邊緣控制的智能人工作業系統[J]. 自動化博覽, 2022, 39 (2) : 59 - 64.
[5] aIpM_gongkongwo. 介紹一下工業控制系統中的I/O[EB/OL]. https://www.elecfans.com/d848518.html, 2019 - 01 - 11.
[6] 朗銳智科. 工業計算機中的DIO和GPIO是什么[EB/OL]. http://www.elecfans.com/d/commp-5050556-1363814489814524231 68.html, 2022 - 05 - 07.
[7] Coder.mark. Raspberry-Pi-PICO系列—第一篇初識RP2040[EB/OL]. https://blog.csdn.n et/tianizimark/article/ details/122708534, 2022 - 05 - 08.
摘自《自動化博覽》2023年第2期暨《邊緣計算2023專輯》