精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

STM32F401RE(Nucleo-401RE 開發板):創建定制無線可編程邏輯控制器 (PLC)

丫丫119 ? 來源:未知 ? 作者:肖冰 ? 2019-09-19 06:57 ? 次閱讀

雖然工業 IoT 正在快速發展,但傳統可編程邏輯控制器 (PLC) 提供的定制靈活性和連接性,卻無法滿足工業工程師的需求。然而,構建定制解決方案可能成本昂貴,而且非常耗時,同時在基于微控制器實現真正嵌入式解決方案方面,幾乎沒有工業工程師擁有相關的操作經驗。

本文對 PLC 進行了簡要介紹,然后說明了開發人員如何創建自己的無線 PLC,從而能夠使用梯形邏輯來實現應用。

可編程邏輯控制器 (PLC) 簡介

PLC 是一種耐用的計算機,用于在工業應用中實現特定流程的自動化。要實現自動化的流程非常廣泛,從制造工廠的裝配線到物聯網建筑照明控制系統,以及中間涉及到的所有流程。

典型 PLC 架構包括(圖 1):

帶有內部 RAMROM 的中央處理單元

數字和模擬輸入

數字和模擬輸出

工業級電源

用于執行所需特性的邏輯應用程序

圖 1:典型 PLC 架構包括一系列模擬和數字輸入,這些輸入按照邏輯應用程序處理和執行,然后驅動其用于模擬和數字輸出的特性。(圖片來源:Unitronics)

雖然市場上有很多傳統 PLC 可供選擇,但開發人員可能還是希望定制 PLC 特性,或者定制構建他們自己的器件。目前,多種不同的方式可用于實現此目的;但是,傳統嵌入式系統工程師可以采用其中一種非常有趣的簡單方式,也就是使用 STM32 開放式開發環境 (ODE)。

構建無線 PLC

要構建自己的無線 PLC,開發人員需要三個主要硬件組件:

CPU

輸入/輸出信號調節

Wi-Fi 模塊

開發人員可以從頭重新設計所有這些組件,或者也可以利用現有的生態系統。STMicroelectronics 推出了 STM32 開發人員工具包,包括所有這些組件,從而簡化了 PLC 創建過程,另外還提供了用于開發梯形邏輯應用程序的基本軟件。

現在,我們將探討這些主要組件,以及讓它們在工業環境中運行必須達到的條件。

我們要探討的第一個組件是 CPU,本例中的 CPU 為STM32F401RE,來自STMicroelectronics。STM32F401RE 是一款 32 位 Arm?Cortex?-M4 處理器,并具有以下特點:工作頻率 84 MHz、應用代碼閃存空間 512 MB、RAM 96 KB。Nucleo-401RE評估板上提供了 STM32F401RE,還包括用于連接其他硬件的 Arduino 針座,以及用于為嵌入式軟件編程的 ST-Link。所有 PLC 代碼將在 Nucleo-401RE 上執行。

圖 2:Nucleo-401RE 開發板構成了 PLC 控制器的基礎,它包含 512 MB 的應用代碼空間,以及用于存儲數據的 96 KB RAM。(圖片來源:STMicroelectronics)

構建 PLC 所必需的第二個組件是用于輸入和輸出的信號調節板。開發人員可以從兩種信號調節板中進行選擇,或者如果應用需要,也可以組合使用。

第一個是X-Nucleo-PLC01A1工業 I/O 擴展板(圖 3)。X-Nucleo-PLC01A1 包含通過CLT01-38SQ7高速數字輸入限流器的八個經過調節的輸入。CLT01-38SQ7 可限制輸入引腳能夠消耗的電流,從而為 PLC 提供數字輸入保護。另外,還有采用VNI8200XP單片式 8 通道驅動器進行調節的八個工業輸出。這種驅動器具有極低供電電流、集成 SPI 接口和高能效 100 mA 微功耗降壓型開關。VNI8200XP 提供八個片載固態繼電器,每個繼電器能夠驅動高達 0.7 安培的電流。X-Nucleo-PLC01A1 還包括 LED 指示燈,以便從直觀地查看每個輸入和輸出的狀態,以及三個報警燈用于指示超溫和其他板故障。X-Nucleo-PLC01A1 通過 SPI 通信鏈路與 Nucleo-401RE 進行通信。

圖 3:X-Nucleo-PLC01A1 是一款工業級擴展板,可提供具有八個數字輸入和八個數字輸出的 PLC 應用。(圖片來源:STMicroelectronics)

PLC 可能還需要能夠控制高電流和模擬信號。X-Nucleo-PLC01A1 專為數字信號設計。為了控制其他信號,開發人員可以使用X-Nucleo-OUT01A1(圖 4)。X-Nucleo-OUT01A1 包含 STMicroelectronics 的ISO8200BQ電位隔離八通道高壓智能電源固態繼電器。在將這些輸出與 PLC01A1 進行比較時,一個很大差異是該擴展板能夠在 10.5 至 33 伏特的電壓范圍內工作,實現模擬信號和數字信號之間的電位隔離。此外,該擴展板上還有幾個 LED 指示燈,可用于指示是否發生了通信故障或熱保護事件。

圖 4:X-Nucleo-OUT01A1 是一款工業級擴展板,可提供具有八個繼電器輸出的 PLC 應用,其中這些輸出能夠處理高達 0.7 安培的電流。(圖片來源:STMicroelectronics)

最后一個組件是無線芯片,可用于提供無線編程機制,或用于創建物聯網連接的 PLC。開發人員可以使用X-Nucleo-IDW01M1,它是一款符合 802.11 b/g/n 標準的 Wi-Fi 擴展模塊,同樣來自 STMicroelectronics(圖 5)。X-Nucleo-IDW01M1 經過 FCC、IC 和 CE 認證,帶有集成天線,因而可隨時直接用于生產系統。

圖 5:X-Nucleo-IDW01M1 是一款工業級 Wi-Fi 模塊,能夠集成到 PLC 中以提供無線連接。(圖片來源:STMicroelectronics)

借助上述所有三個組件,開發人員可以按照圖 6 所示的順序組裝硬件 PLC。雖然也可以按照相反順序組裝開發板,這不會造成損壞,但將需要一些額外調試。萬一需要將任何定制硬件添加到 PLC(例如 RS-485 芯片),開發人員可以使用Arduino原型開發擴展板,例如Proto Shield(來自Olimex)或AdafruitProto Shield。

圖 6:組裝 STMicroelectronics 開發板以構建功能 PLC 的順序。(圖片來源:Beningo Embedded Group)

設置 PLC 軟件

我們需要使用多個軟件來設置 PLC。其中包括:

PLC 嵌入式軟件

嵌入式編譯器

梯形邏輯應用程序

PLC 嵌入式軟件 FP_IND_PLCWIFI1 由 STMicroelectronics 開發,可從 STM 網站下載。它包含讓 STM32F401RE 投入運行所需的全部代碼,還包含多種預設配置,具體取決于需要哪些硬件堆棧。該嵌入式軟件附帶了已針對 STM System Workbench、IAR Workbench 和 Keil MDK 設置的三個項目,并且可從http://www.st.com/en/embedded-software/fp-ind-plcwifi1.html下載(圖 7)。開發人員可以使用其中任何一種設置,以便在 PLC 上編譯和部署嵌入式軟件。

圖 7:運行 PLC 必需的嵌入式 PLC 應用程序包(圖片來源:Beningo Embedded Group)

下載嵌入式應用程序之后,可將其導入所需的編譯器 IDE 并進行編譯。開發人員應該確保代碼編譯沒有問題。然后,可通過與 PC 的標準 USB 連接,將編譯的應用程序下載到 PLC。

最后,STMicro 還創建了簡單的 PLC 應用程序,可用于創建梯形邏輯應用程序。該應用程序適用于 iOSAndroid。通過在移動設備的應用商店中搜索“ST PLC App”,可將該應用程序下載到移動設備上。

簡單的應用程序示例

一旦 PLC 的嵌入式軟件運行之后,開發人員便可以專注于使用 ST PLC 應用程序開發他們的應用代碼。應用代碼將使用梯形邏輯來開發。開發人員可以啟動應用程序,并基于他們選擇要包括在硬件堆棧中的開發板來創建新項目(圖 8)。

圖 8:通過使用 ST PLC 應用程序,開發人員可以創建新項目(左圖紅色突出顯示),選擇項目名稱(右圖橙色),然后配置將要使用的硬件(右圖綠色)。(圖片來源:Beningo Embedded Group)

配置項目之后,開發人員即可為應用程序創建梯級。第一個項目不妨簡單地測試是否能夠讀取輸入,以及基于該輸入能否設置輸出。開發人員可以通過如下方法來創建此測試:單擊“Add rung”(添加梯級),然后實現在應用程序中必需的邏輯。一旦完成此操作之后,開發人員應該會創建一個類似圖 9 左側所示的梯級。

圖 9:通過使用 ST PLC 應用程序,開發人員可以實現自己的邏輯,以便根據他們的需求來控制設備(左)。一旦創建應用程序之后,便可通過單擊發送應用程序按鈕(右),將其無線推送至 PLC。(圖片來源:Beningo Embedded Group)

保存梯級之后,開發人員將返回到主項目屏幕。在該屏幕上,他們可以在應用程序中編輯梯級或創建更多梯級。如果準備部署應用程序,請單擊圖 9 右側所示的無線傳輸按鈕,這樣可進行連接并傳輸 PLC 應用程序。請注意,開發人員必須將移動設備連接到 PLC 接入點,并配置端口和 IP 地址,這樣才能成功傳輸應用程序。

構建無線 PLC 的技巧和訣竅

在創建自己的定制無線 PLC 時,開發人員可以遵循一些技巧和訣竅。其中包括:

如果無線開發板不工作,請確認開發板在堆棧上的方向正確。(即按正確的方向放置)

通過為 SSID 添加安全密鑰,提升系統安全性。

將默認無線特性更改為站模式,并僅在更新過程中切換到接入點,從而更新 PLC。

考慮添加工業通信協議,例如 RS-485 和 Modbus。

快速構建 PLC 的最佳方式是將它視為一個有趣的問題,然后嘗試使用 PLC 解決該問題。

使用 IAR Embedded Workbench for Arm 來編譯 PLC 嵌入式軟件。該工具鏈在 30 天內代碼不受限。

結論

構建定制 PLC 不一定就那么困難。如本文所示,STMicroelectronics 提供的生態系統讓開發人員能夠開發基本 PLC 軟件,并且極其快速地運行該軟件。然后,開發人員還能夠輕松地修改和定制該應用程序,以滿足各種應用的需求和應對各種挑戰。

雖然主要目標是使用梯形邏輯來創建最終應用代碼,但如果開發人員擁有豐富的經驗和知識,他們可以輕松地對嵌入式軟件進行調整,構建更加強大和靈活的混合系統。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Nucleo
    +關注

    關注

    0

    文章

    27

    瀏覽量

    17349
  • STM32F401RE
    +關注

    關注

    0

    文章

    2

    瀏覽量

    4223
收藏 人收藏

    評論

    相關推薦

    霍爾傳感AH401/AH401F/AH402F廣泛用于電機控制

    霍爾傳感AH401/AH401F/AH402F廣泛用于電機控制
    的頭像 發表于 08-19 09:47 ?256次閱讀
    霍爾傳感<b class='flag-5'>器</b>AH<b class='flag-5'>401</b>/AH<b class='flag-5'>401F</b>/AH402<b class='flag-5'>F</b>廣泛用于電機<b class='flag-5'>控制</b>

    TMP401 ±1°C可編程、遠程和本地數字輸出溫度傳感數據表

    電子發燒友網站提供《TMP401 ±1°C可編程、遠程和本地數字輸出溫度傳感數據表.pdf》資料免費下載
    發表于 08-13 10:17 ?0次下載
    TMP<b class='flag-5'>401</b> ±1°C<b class='flag-5'>可編程</b>、遠程和本地數字輸出溫度傳感<b class='flag-5'>器</b>數據表

    可編程邏輯控制器的特點與用途

    隨著工業自動化技術的不斷發展,可編程邏輯控制器PLC)作為其核心控制設備,發揮著至關重要的作用。PLC
    的頭像 發表于 06-19 14:16 ?358次閱讀

    變頻驅動可編程邏輯控制器的區別

    在工業自動化領域中,變頻驅動(變頻)和可編程邏輯控制器PLC)是兩種重要的
    的頭像 發表于 06-12 11:36 ?485次閱讀

    可編程邏輯控制器的基本功能

    可編程邏輯控制器(Programmable Logic Controller,簡稱PLC)作為現代工業自動化控制領域的核心設備之一,已經廣泛
    的頭像 發表于 06-03 15:10 ?495次閱讀

    可編程邏輯控制器和微控制器的區別

    在電子技術和工業自動化領域中,可編程邏輯控制器PLC)和微控制器(MCU)是兩種常用的控制設備
    的頭像 發表于 06-03 14:52 ?479次閱讀

    PLC可編程邏輯控制器)的升級方式有哪些呢?

    PLC可編程邏輯控制器)的升級通常包括硬件升級和軟件升級兩個方面。
    的頭像 發表于 05-27 11:26 ?544次閱讀

    STM32F401RE-Nucleo的BIN能直接用于STM32F411RE-Nucleo嗎 ?

    各位猜猜看:STM32F401RE-Nucleo的BIN能直接用于 STM32F411RE-Nucleo嗎 ? 可以試試看哦。
    發表于 05-13 09:01

    STM32F401RE修改EGR寄存時,SR寄存值隨之變化,這是什么情況?

    STM32F401RE,TIMER2,IAR環境:發現修改EGR寄存時,SR寄存值隨之變化,這是什么情況?
    發表于 05-11 07:40

    Nucleo-F401RE下載bin斷電后再上電bin文件丟失的原因?

    手上有一塊NUCLEO-F401RE的板子,這兩天用來跑了下Mbed的mbed-examples-led-blink的例程。在網上編譯后直接下載bin文件到Nucleo映射在電腦的移動U盤里。板子
    發表于 04-28 08:04

    nucleof401RE通過usb燒錄完以后斷電重新上電代碼就沒有了,怎么解決?

    我手里有一個nucleo f401RE的板子,但是我發現每次我通過usb燒錄完以后斷電重新上電代碼就沒有了,請問怎么解決呀
    發表于 04-17 07:22

    PLC可編程邏輯控制器)利用Modbus通訊可以完成哪些任務呢?

    PLC可編程邏輯控制器)利用Modbus通訊可以完成多種任務,以下是其中的一些主要應用
    的頭像 發表于 04-11 15:41 ?522次閱讀

    極海APM32F407可編程邏輯控制器PLC應用概述

    PLC可編程邏輯控制器)作為可控制、執行和監控自動化機器設備的數字運算操作電子系統
    的頭像 發表于 03-05 18:11 ?1116次閱讀
    極海APM32<b class='flag-5'>F</b>407<b class='flag-5'>可編程</b><b class='flag-5'>邏輯</b><b class='flag-5'>控制器</b><b class='flag-5'>PLC</b>應用概述

    可編程控制器的組成 可編程控制器有哪些特點?

    可編程控制器(Programmable Logic Controller,PLC)是一種使用數字計算機技術和專用外設實現工業過程自動化控制的設備。它在工業生產中起到了非常重要的作用。本文將詳細介紹
    的頭像 發表于 01-18 11:18 ?1131次閱讀

    可編程邏輯控制器 (PLC) 中的梯形邏輯

    可編程邏輯控制器PLC 是用于執行控制功能的數字計算機,通常用于工業應用。在可用于對 PLC
    發表于 10-04 17:32 ?1338次閱讀
    <b class='flag-5'>可編程</b><b class='flag-5'>邏輯</b><b class='flag-5'>控制器</b> (<b class='flag-5'>PLC</b>) 中的梯形<b class='flag-5'>邏輯</b>