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

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

3天內不再提示

如何編寫一個簡單的電機控制函數塊?

汽車電子技術 ? 來源:方正智芯 ? 作者:北島李工 ? 2023-02-07 14:00 ? 次閱讀

今天這篇文章我們來編寫一個簡單的電機控制函數塊,并將其下載到倍福CX5020控制器進行測試,以熟悉TwinCAT3環境下基本的編程步驟。

pYYBAGPh58OAWrkVAACOeO5z8Tg574.png

打開TwinCAT3(TC3),按照上一篇文章《倍福PLC學習:掃描EtherCAT I/O子站并測試模塊》介紹的內容新建工程項目并掃描EtherCAT子站,項目名稱為“motorControl”。

在左側項目樹的“PLC”節點下右鍵單擊,選擇“Add new item(添加新內容)”,添加新的PLC項目,命名為“CPU1”,如下圖所示:

poYBAGPh59eAJgdhAADX2L42cYs314.png

添加完成后,“CPU1 Project”中會有POUs、GVLs、DUTs等文件夾。其中,POU是程序組織單元,GVL是全局變量列表,UDT是用戶自定義變量。我們計劃編寫一個電機控制的函數塊,因此在“POUs”文件夾右鍵單擊,在彈出的對話框中選擇“添加(Add)”→“POUs”,如下圖所示:

poYBAGPh5_GAPXBXAABLT3SFNHU347.png

在彈出的“添加POU”對話框中,選擇功能塊(Function Block),命名為motorControl,編程語言選擇ST語言,如下圖所示:

pYYBAGPh6AWAOY6wAAAzgmLO7s0161.png

在函數塊motorControl中聲明變量,其中:

VAR_INPUT是輸入變量,包含電機啟動 、停止信號;

VAR_OUTPUT是輸出變量,包含輸出信號(線圈);

VAR_STAT是靜態變量,包含沿信號檢測變量;

如下圖所示(注意變量不區分大小寫):

pYYBAGPh6BmAZqd1AABcK7PU8UY327.png

編寫代碼如下圖所示:

pYYBAGPh6C-ALj1UAAF44ySBoxQ271.png

為了分配參數,我們新建全局變量列表:GVL1,并添加變量如下圖所示:

poYBAGPh6EqAH467AAAwiE6YHSo288.png

接下來要在主函數(MAIN)中調用電機控制函數塊。首先在變量列表中聲明motorControl的實例,命名為“motorControl1”,編寫控制代碼如下圖所示:

pYYBAGPh6GSAC5zSAAA4XMvGipc252.png

單擊工具欄“Build”→“Build CPU1”編譯PLC程序。

單擊工具欄“PLC”→“Download”下載PLC程序。

單擊工具欄“PLC”→“Login”登錄到在線狀態,或者工具欄的快捷按鈕,如下圖所示:

pYYBAGPh6HyAJIkpAAA4nhUy4os625.png

pYYBAGPh6I-AVCjfAAAcg97_x_w251.png

如果PLC處于未運行狀態,單擊“Start(啟動)”使其運行。本例程為了給出電機啟動信號,我們將全局變量“startBtn1”的“Prepared Value”設置為“TRUE”,并單擊工具欄“Write Values”按鈕將該值寫入到PLC中,如下圖所示:

pYYBAGPh6KSACH2OAAEJwk3qohY015.png

此時可以看到主程序MAIN中電機輸出信號為TRUE,如下圖所示:

pYYBAGPh6LWAHvDRAADqSVnlNmo676.png

如果想讓函數輸出對應到實際的輸出模塊,在“CPU 1 instance”→“PLCTask Outputs”→“GVL1.coilKM”,將其對應到“Linked to”指定的輸出模塊即可。

pYYBAGPh6MqAfCAPAAGq3J8EhTw290.png

好了,關于倍福PLC編寫函數塊及簡單調試就先介紹到這里。

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

    關注

    112

    文章

    15333

    瀏覽量

    172314
  • 電機控制
    +關注

    關注

    3480

    文章

    1730

    瀏覽量

    265170
  • 函數
    +關注

    關注

    3

    文章

    4114

    瀏覽量

    61426
  • cx5020
    +關注

    關注

    0

    文章

    2

    瀏覽量

    1675
收藏 人收藏

    評論

    相關推薦

    編寫延時函數簡單方法

    非常的準確但是相當的麻煩而且容易搞錯,我這里介紹簡單的方法.可以驗證你的延時函數這里用
    發表于 11-25 09:21

    labview編寫簡單虛擬函數發生器

    labview編寫簡單虛擬函數發生器
    發表于 05-04 22:25

    一塊AT89C2051+一塊4066和三按鍵的兩相四線電機控制

    本帖最后由 dbsjacky 于 2015-11-16 16:43 編輯 各位大大,能用一塊AT89C2051+三4066和三按鍵分別控制三臺兩相四線
    發表于 11-15 02:36

    如何在Matlab編寫S函數 設定值是梯形函數的輸入

    如何在Matlab編寫S函數設定值是把圖2的constant代替成圖1的函數拜托了~~
    發表于 05-08 16:37

    我的電機直流有刷電機,配有AQMD2410NS的驅動器,求推薦一塊控制器或控制

    我的電機直流有刷電機,配有AQMD2410NS的驅動器,求推薦一塊控制器或
    發表于 09-18 12:01

    怎樣在Ubuntu系統下用C語言編寫簡單的hello word程序

    嵌入式練習在Ubuntu系統下用C語言編寫簡單的輸出 hello word的程序,并編譯有、運行之;#includeint main(){printf("hello
    發表于 10-27 10:15

    介紹使用SCL語言編寫電機控制函數

      電機控制在實際項目中經常使用,般的電機控制程序都是具有啟動、保持、停止的功能?! 〗裉爝@
    發表于 03-09 17:02

    如何為Serial.printf() 編寫簡單的包裝函數?

    決定為 Serial.printf() 編寫簡單的包裝函數。這個函數看起來像這樣: 代碼:全
    發表于 05-04 07:24

    簡單的c編寫的旋進數組

    簡單的c編寫的旋進數組。
    發表于 03-11 13:39 ?0次下載

    編寫濾波器函數

    本文檔內容介紹了基于編寫濾波器函數,及源代碼,供參考
    發表于 04-13 15:51 ?16次下載

    就增量式PID的函數進行編寫

    首先,就增量式PID的函數進行編寫
    的頭像 發表于 06-17 14:27 ?1587次閱讀
    就增量式PID的<b class='flag-5'>函數</b>進行<b class='flag-5'>編寫</b>

    倍福PLC學習:編寫函數塊及簡單調試

    今天這篇文章我們來編寫一個簡單電機控制函數塊,并將其下載到倍福CX5020控制器進行測試,以熟
    的頭像 發表于 11-09 09:34 ?3891次閱讀

    電機控制方式以及程序的編寫

    本文給大家介紹一下各種電機控制方式以及程序的編寫。 1、起保停:I0.0啟動I0.1停止Q0.0輸出(控制電機啟停接觸器),I0.0
    的頭像 發表于 02-13 14:40 ?5930次閱讀
    <b class='flag-5'>電機</b>的<b class='flag-5'>控制</b>方式以及程序的<b class='flag-5'>編寫</b>

    PWM輸出控制電機

    PWM 輸出控制電機電機系列 一、PWM 輸出控制電機 1 、相關 IO 介紹 2 、編寫 PWM 輸出庫
    發表于 05-06 11:03 ?5次下載
    PWM輸出<b class='flag-5'>控制</b><b class='flag-5'>電機</b>

    伺服電機簡單控制方法

    伺服電機是一種特殊的電機,可以根據控制信號準確地控制角度、速度和位置。伺服電機的最簡單
    的頭像 發表于 01-14 14:40 ?1041次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>