在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

新功能發布 | TSMaster的MATLAB自動化控制模塊

上海同星智能科技有限公司 ? 2022-09-13 11:53 ? 次閱讀

前言

今天我們繼續來介紹TSMaster新功能—MATLAB自動化控制模塊。該模塊提供了大量用于MBD開發的小工具。還包含了這個可以將c代碼自動轉化為stateflow代碼的程序。

MATLAB的自動化對象

MATLAB automation object /

> 首先點擊連接,連接到matlab的自動化對象,需要啟動matlab的主程序,一旦連上之后,matlab程序就可以實時被TSMaster軟件來控制。那么我們點擊之后可以看到連接按鈕變灰,然后斷開連接按鈕變成高亮,那么這個時候就可以通過我們的軟件來控制matlab程序了。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge505f7ce-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 然后我們可以點擊這個c代碼轉stateflow,點擊解析,會實現一個邏輯樹,然后再點擊生成代碼。這個時候我們就可以看到,我們的示例代碼就可以自動轉換成stateflow代碼,該功能可以迅速的將已有的C代碼的邏輯一鍵轉換成完全等價的stateflow的邏輯,從而提高MBD的開發效率。那么轉化完成的效果就是這樣,雙擊chart1展開之后就可以看到跟剛才的c腳本完全對應的stateflow的邏輯。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge571f262-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

SIL和HIL環境的自動構建

Automatic build of SIL and HIL /

只要我們擁有可以生成代碼的Simulink仿真模型,就可以通過此模塊來實現該模型在TSMaster環境中的實時運行。從而讓我們的算法可以在軟件設計的前期就可以參與到HIL和SIL的實時仿真中來,同時有了小程序的加持,我們還可以對算法進行細致入微的調試、監控,甚至將二進制文件發布給其他的用戶,進行聯合仿真,那么具體如何實現呢?

> 我們還是從0開始,舉一個例子來說明:首先我們切換到第一個頁面,SIL and HIL頁面,可以看到這個頁面有4個步驟,按照這4個步驟順序執行,就可以迅速搭建一個HIL環境。那么第一步是算法模型的配置,他給了兩個輸入,一個是我們的小程序的名稱,第二個是Simulink模型文件。對于第一個輸入,只要給我們的新構建的小程序起個名字就可以了,比如說這個默認的Model1,我們輸入之后點擊最右邊的綠色的勾,它的作用就是判斷Model1是否存在。如果不存在就創建一個,如果存在就使用這個Model1。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge5c3bb6a-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 這樣可以將我們新的算法集成到我們現有的小程序中,在這里就需要填入現有的小程序的模型名稱,也就是從中可以選擇我們的小程序名稱。那么這一步成功之后,就來到了Simulink模型文件的設置過程。在此我們需要找一個Simulink的實例程序進行講解,我們首先打開Simulink,在Simulink的啟動頁會有很多的實例。我們找一個比如展開這個stateflow,里面有空白圖、簡單圖分層圖等等。我們選擇這個分層圖,就打開了一個名為untitled的模型,我們看到這個模型,包含了一個run和一個cooldown。這兩個大的狀態run了30秒之后,會冷卻 5秒,然后5秒之后繼續run,從此循環往復,而在這個run的過程中,是每隔1秒就讓輸出在10和1之間切換,這就是當前stateflow的簡單邏輯。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge60eea36-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 我們按esc返回到頂層,可以看到這個模型只有一個輸出,我們加一個示波器來看看波形。按F5運行,當然這個運行需要將當前的工作目錄切換掉,我們可以選擇隨便一個目錄比如說新建個文件夾,然后我們回到剛才的模型按F5運行成功,那么打開示波器我們可以看到輸出和我們之前的推斷是完全吻合的。也就是運行了30秒之后休息5秒,然后繼續運行。我們將這個模型另存為simple,接下來將這個示波器刪除,并且添加一個out接口,將這個模型配置成可以代碼生成的模型,隨后我們就要配置一下代碼生成的細節。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge65ac212-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 我們進入模型的設置,點擊代碼生成,首先要將這個grt改為ert.tlc。因為目標的環境是嵌入式環境,同時勾選僅生成代碼,然后展開代碼生成,進入到模板中,將“生成示例主程序”的勾去掉,這樣就不會自動生成main函數。因為這個main函數的文件往往是不會用的。至此配置完成。我們點擊保存并且關閉這個模型。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge69af5e4-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

MATLAB控制模塊

MATLAB Control module /

> 接下來就回到matlab控制模塊中,選擇Simulink模型文件,點擊綠色的箭頭按鈕,選中我們剛才的simple.slx,那么可以看到前兩步過了之后步驟1就算執行完成。接下來就到了cache文件夾和codegen文件夾的設定,那么留空就表示生成到默認的位置。我們可以將這兩個位置改掉,還是點擊綠色的按鈕,然后可以選擇我們的cache文件夾,我們可以新建一個cache,并且選擇這個文件夾,那么cache文件夾就已經設置成功。接下來就是codegen,還是一樣,我們可以在cache旁邊建一個codegen,點擊選擇,那么這兩個文件夾也就設置完畢。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge6db34ce-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 然后就到了代碼生成的環節。我們只要點擊啟動Simulink代碼生成,等待代碼生成完畢就可以了。那么生成的代碼就會存放到剛才設定的codegen這個文件夾中。第一次生成會耗費一點時間,我們需要耐心的等待。那么Simulink的執行過程是同步的,而且比較慢,所以TSMaster可能會報警。現在我們可以看到代碼生成已經完成。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge71b1f08-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 那么接下去就是自動復制已生成的代碼到我們的小程序的代碼庫里面,點擊之后可以顯示已copy6個文件,那么接下去第二步就已經完成。也就是代碼生成的過程已經成功實現,再往下就是代碼集成。代碼集成目的就是將算法給調用起來,我們點擊編輯小程序的源碼按鈕,打開Model1這個小程序,我們首先看一下屬性,然后點擊代碼庫的路徑,可以看到simple.c和.h文件以及其他的一些用到的頭文件。打開這兩個文件,首先我們看一下simple.h文件,那么這個文件是一個接口文件,可以看到這里面有三個函數,初始化step和terminate函數,我們需要分別將這三個函數的調用拷貝到Model1小程序里面。首先就是要用這個simple.h頭文件。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge777fba6-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 我們回到小程序,點擊全局定義#include,"simple.h"。那么接下來就是COPY。我們雙擊這個simple初始化,然后到小程序的初始化事件中,粘貼然后再copy step到我們的小程序的step函數中,粘貼然后就是terminate,回到我們小程序的停止事件,同樣粘貼,這樣就實現了函數調用。那么需要注意的就是step函數的周期了,默認周期是5毫秒,但模型中肯定不是。我們首先還是打開這個simple.slx,然后我們到模型的屬性看一下這個模型的相關的求解器的屬性。它是定步長,并且步長是0.1秒,那么0.1秒在TSMaster里面就是100毫秒,雙擊step函數,將周期改為100,那么接下來我們需要觀測一下out1這個信號

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge7bdc06e-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 我們可以直接在變量點右鍵,添加變量,輸入我們這個out1,那么就新建了一個out1的變量,然后我們就需要在代碼里找到這個變量,那么可以看到這個extern,這里寫的是outports,那就是simple y這個變量,它有一個成員叫out1,就是我們需要用到的變量,我們可以在這里寫下out1.set,把剛才這個out1拷貝過來,這樣就實現了變量的賦值。那么小程序就算編寫完畢。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge8093616-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

執行HIL和SIL的仿真

Perform emulation of HIL and SIL /

> 在此我們可以直接點擊運行仿真,那么我們的算法模型其實就已經實時的在運行,這個時候如果需要觀測信號,首先要啟動我們的TSMaster的仿真,然后我們可以打開一個觀測窗口,比如說圖形,打開之后我們可以點右鍵添加系統變量,通過內部變量,找到model 1的out 1這個變量,然后我們可以修改他的范圍,比如說改成1—15 -1—15,那么就可以看到這個圖形的顯示跟我們剛才看到的Simulink示波器畫面是完全一樣的。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge85863a8-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

> 這個信號是可以設成豎線顯示,這樣就更符合這個信號代表的邏輯含義,那么這個out1的信號是實時刷新的,這就意味著我們可以通過總線接口將此算法模型接入到整車網絡,可以與實際的控制器進行互動,那么以上就是matlab控制模塊進行HIL的簡單的方法。

e4ef8ea8-307a-11ed-9ade-dac502259ad0.pnge8b12ba0-307a-11ed-9ade-dac502259ad0.pnge5495168-307a-11ed-9ade-dac502259ad0.png

以上就是我們本期介紹的TSMaster新功能之MATLAB自動化控制模塊,我們下期再見!(具體操作解說可以觀看我們B站視頻哦)

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

    關注

    29

    文章

    5588

    瀏覽量

    79368
收藏 人收藏

    評論

    相關推薦

    PLC在工業自動化的應用及解決方案

    可編程邏輯控制器(PLC)是工業自動化中的核心設備之一,是讓工廠能夠以自動化方式運行的關鍵應用。PLC通常是由多個模塊組成的模塊化系統,專門
    的頭像 發表于 11-29 14:37 ?606次閱讀
    PLC在工業<b class='flag-5'>自動化</b>的應用及解決方案

    PLC數據采集模塊自動化中的作用

    隨著工業4.0和智能制造的興起,自動化技術不斷進步,PLC作為自動化控制的核心設備,其功能和應用范圍也在不斷擴展。數據采集模塊作為PLC系統
    的頭像 發表于 11-26 13:41 ?362次閱讀

    機械自動化和電氣自動化區別是什么

    機械自動化和電氣自動化是現代工業生產中兩個重要的領域,它們在許多方面有著密切的聯系,但也存在一些明顯的區別。 一、基本概念 機械自動化 機械自動化是指利用機械設備、傳感器、
    的頭像 發表于 07-01 09:33 ?4158次閱讀

    機械自動化自動化的一種嗎

    引言 自動化技術是指利用控制裝置對生產過程進行控制,以實現生產過程的自動化。機械自動化自動化
    的頭像 發表于 07-01 09:32 ?1693次閱讀

    藍牙模塊在工業自動化中的應用

    隨著科技的快速發展,工業自動化已成為現代工業生產的重要組成部分。藍牙模塊作為一種無線通信技術,其在工業自動化領域的應用日益廣泛。本文將探討藍牙模塊在工業
    的頭像 發表于 06-20 17:29 ?492次閱讀

    工業自動化中的控制方式

    工業自動化是現代工業發展的重要標志,它極大地提高了生產效率,降低了生產成本,并改善了產品質量。在工業自動化中,控制方式作為實現自動化控制的關
    的頭像 發表于 06-17 11:41 ?856次閱讀

    如何實現PLC的自動化控制邏輯

    在工業自動化領域,PLC(Programmable Logic Controller,可編程邏輯控制器)扮演著至關重要的角色。PLC通過編程實現自動化控制邏輯,使設備能夠按照預定的程序
    的頭像 發表于 06-15 16:44 ?1203次閱讀

    機械制造與自動化自動化類嗎

    機械制造與自動化自動化領域的一個重要分支,它涉及到機械設計、制造、檢測、控制等多個方面,是現代制造業的核心組成部分。 機械制造與自動化是指利用計算機、機器人、傳感器等
    的頭像 發表于 06-11 11:18 ?1547次閱讀

    工業自動化自動化區別是什么

    生產過程的自動控制和管理。自動化的目標是提高生產效率、降低成本、減少人為錯誤和提高產品質量。自動化技術廣泛應用于各個領域,包括制造業、交通運輸、醫療保健、家庭生活等。 二、工業自動化
    的頭像 發表于 06-11 11:13 ?1742次閱讀

    工業自動化控制技術原理是什么

    工業自動化控制技術是現代工業生產中不可或缺的一部分,它通過自動控制系統對生產過程進行監控、調節和優化,以提高生產效率、降低成本、保證產品質量和提高生產安全性。本文將詳細介紹工業自動化
    的頭像 發表于 06-11 11:06 ?1685次閱讀

    工業自動化控制設備包括什么設備

    工業自動化控制設備是現代工業生產中不可或缺的一部分,它們通過自動化技術實現生產過程的高效、穩定和精確控制。本文將詳細介紹工業自動化
    的頭像 發表于 06-11 11:04 ?2014次閱讀

    工廠自動化控制的典型實現方式

    工廠自動化控制是現代制造業的關鍵組成部分,它通過應用先進的信息技術、自動化技術和控制技術,實現生產過程的自動化、智能
    的頭像 發表于 06-06 15:51 ?1090次閱讀

    AC/DC電源模塊在工業自動化領域的應用探析

    /DC電源模塊在工業自動化領域的應用進行探析。 ? ?AC/DC電源模塊在工業自動化領域的應用探析 首先,AC/DC電源模塊在工業
    的頭像 發表于 05-16 13:50 ?315次閱讀

    DC電源模塊在工業自動化中的應用案例分析

    BOSHIDA ? DC電源模塊在工業自動化中的應用案例分析 BOSHIDA ?DC電源模塊在工業自動化中有很多應用案例,以下是其中幾個典型的例子: 1. 機器人
    的頭像 發表于 02-22 11:08 ?467次閱讀
    DC電源<b class='flag-5'>模塊</b>在工業<b class='flag-5'>自動化</b>中的應用案例分析

    TSMaster 2024年1月最新版本,新功能太實用

    、新增TTS機箱模塊、新增地圖顯示模塊等。一大波超實用的新功能,一起來看看吧!體驗新功能建議您將軟件更新至最新版本TSMaster下載鏈接0
    的頭像 發表于 02-19 12:12 ?1718次閱讀
    <b class='flag-5'>TSMaster</b> 2024年1月最新版本,<b class='flag-5'>新功能</b>太實用
    主站蜘蛛池模板: 婷婷丁香综合网| 免费在线成人| 亚洲在成人网在线看| 高h肉宠文1v1男男| 种子搜索在线| 亚洲精品你懂的| 四虎最新网址入口| 日韩a免费| 天天操天天干天天摸| 午夜影剧| 欧美在线视频看看| 国产chinesetube| 天天舔天天插| 免费午夜视频| 日本xxxx69| 久久久精品免费观看| 成人免费一区二区三区| ww7788色淫网站女女免费| 日本一区二区免费看| 亚洲欧洲色| 人与牲动交xxxxbbbb高清| 黄色污网站在线观看| 波多久久夜色精品国产| 天天躁天天爽| 91伊人网| 国产美女精品久久久久中文| 天堂tv在线观看| 一级特级女人18毛片免费视频| 亚洲成电影| 欧美高清在线观看视频| 三级网址在线| 四虎最新地址| 男女免费网站| 又黄又粗暴的120秒免费gif视频| 欧美黑人5o厘米全进去| 91在线免费视频| 性欧美暴力猛交69hd| 久久综合九色欧美综合狠狠| 亚洲午夜视频在线观看| 5151hh四虎国产精品| 最新黄色在线|