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

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

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

3天內不再提示

CASL編程?——CANape的自動化“利器”

北匯信息POLELINK ? 2022-08-02 10:09 ? 次閱讀

前言

得益于計算機的發明及高速發展,21世紀是充滿智能科技、便捷的世紀。無人駕駛人工智能物聯網,這些概念已耳熟能詳,而它們背后則是利用編程實現的復雜邏輯。作為新時代的我們,生活已經和“編程“密不可分了,例如常見的C、C++PythonJava等編程語言。Vector公司與時俱進,在CANape這款強大的測量和標定工具里,采用專門的編程語言——CASL(Calculation and Scripting Language),方便汽車工程師進行數據分析和開發。今天我們就來聊聊這位強大又低調的選手,并和它做個朋友!

CASL的語法與C編程語言非常相似(但也有不同處:CANape不使用指針),允許開發人員集成自己的C代碼或Simulink模型。所以說,大家在使用之前基礎的C語言編程知識還是要掌握的~為了方便使用,CANape提供了智能感知輸入、代碼塊和各種內置函數組。

poYBAGLngp2ACdBoAAGMDsexmTw452.png

圖1智能感知輸入

在CASL中,主要運用函數和腳本,來解決各種不同的任務。從簡單的計算,例如,添加信號,直至CANape的自動化。

Tips: CASL與編程語言CAPL可不一樣哦,后者是在CANoe和CANalvzer環境中使用的。CAPL是一種面向事件的編程語言,即程序節點用于指定事件,并在何時執行以及反應。而CASL是一種信號導向的語言。)

基本概念

1)What Are Functions

在測量過程中,函數被同步處理,主要用于實時測量或者對于加載測量文件的各種計算和應用。例如,函數可以是數學公式或程序代碼,其中變量代表信號或參數

通常有在線和離線兩種使用場景。

▲Online applications(在實時測量過程中)

》測量虛擬信號計算

》允許對外接設備讀寫

▲Offline applications(訪問現有的測量文件)

》測量文件虛擬信號計算

》執行數據挖掘

poYBAGLngsiAd7aFAAFPoaMK4BY813.png

圖2虛擬函數使用場景

下面我們來看看函數的語法結構:

pYYBAGLngt2AI4rfAAD_5YZZEKM266.png

圖3函數語法結構

當一個函數被調用時,參數可以被傳遞給函數。參數通常作為引用傳遞給函數,因此既可用于輸入,也可用于輸出。

除了通過參數傳遞從函數發出結果外,還可以使用返回控制結構(return也是關鍵字)的路徑。默認情況下,返回double類型的值,字段或向量(數組)不允許作為返回值。

CANape對自身預定義和用戶定義函數進行了區分,稱為庫函數和工程函數。

poYBAGLngu2AG_XdAADpPVim4VM113.png

圖4函數分類

2)What Are Scripts

腳本是程序代碼的一部分,可在編輯器窗口中編寫,并在調用時順序處理。腳本用于自動化或控制CANape中的聯合活動,例如測量和其他系統相關序列的開始和停止,它獨立于測量運行。它們也可以用來調用在Microsoft Visual Studio或MATLAB/Simulink中生成的外部模型。

poYBAGLngweAFPx4AAERDzIO0po192.png

圖5腳本示例

此外,可以在CANape運行時,使用命令行選項控制腳本行為。

兩者區別:

1.流程優先級不同。腳本以較低進程優先級執行,相對于測量是異步運行的。另一方面,函數以高進程優先級執行,并與測量同步執行。與函數相比,腳本具有更廣泛的預定義函數組,如附加文件和腳本函數、Flash函數、診斷和數據挖掘函數。

2.與腳本不同,函數不能使用斷點進行調試,因為它們具有高優先級。不過我們可以使用以下命令在Write窗口中輸出調試信息Write()、Writef()、Print()或Printf()。

3.腳本不需要函數頭和函數體。程序代碼可以簡單地直接寫入編輯器,然后按編碼順序處理。

4.函數必須是函數編輯器導出格式(*.cne)或者是ASCII文本格式(*.txt);腳本必須為腳本格式(*.scr or *.cns).

5.函數可以被保存到工作目錄中的CANape.ini配置文件中,但腳本文件被保存為獨立文件

說了這么多,我們如何編輯呢?

如何編輯

全局變量、函數、腳本均可在CANape的函數編輯器中創建、編輯和編譯。函數編輯器主要分為樹視圖、列表視圖、編輯器窗口、消息窗口,可以在CANape中直接打開。

poYBAGLngzmACLrJAALwRHpl1xg560.png

圖6函數編輯器

變量類型:變量是特定類型值的占位符。變量可以在腳本和函數中聲明和定義,主要分為全局變量和局部變量。

全局變量是CANape配置中的所有函數和腳本都可以使用的特殊數據對象,局部變量僅在各自的函數或腳本中有效。

(Tips:全局變量是靜態的。它們在兩個測量之間以及加載項目之后保留它們的值。當保存配置或項目時,它們的當前值保存在參數文件中,并在加載項目時重新加載。)

參數總是作為通過引用傳遞給函數,可以使用具有相同作用var和double前綴來修飾。

poYBAGLng1uAenHDAAB1gsReP0w672.png

圖7相同作用前綴

關于數據類型就不做贅述了,大家自行百度啦。

接下來重點介紹一些實用小技巧:

使用頻率較多的簡單語句:

>測量過程開始/停止:Start();Stop();

>測量文件信號導入:FILE1.CCPsim.ampl;

>測量和標定:x = CCPsim.ampl;

CCPsim.ampl = x;

>發送報文:CAN1.SendMessage(0x1a1,0xff,0x7f);

>延時(等待)3秒:Sleep(3000);

>測量緩存區或文件中對象信號值的數量:sizeof();

pYYBAGLng5KADXMBAAB_SCXTkDI371.png

圖8數量獲取

>所選對象特定的測量值進行讀寫訪問:mbuffer[ ];(常與sizeof結合使用)

pYYBAGLng6OATNsiAAB4DEpCWP0085.png

圖9讀寫特定值

>輸出:print(); write();

poYBAGLng7eAWjgpAAGRCRX7llI608.png

圖10常見輸出格式

可以從一個函數中調用另一個函數:

poYBAGLng8mASoe6AACtG16PlvQ445.png

圖11函數調用函數

從一個腳本中調用另一個函數:

pYYBAGLng9mAOcooAACPhZJl8iM543.png

圖12腳本調用函數

從一個腳本中調用另一個腳本:

poYBAGLng_KALhvFAAEGHUHGKaU571.png

圖13腳本調用腳本

正確終止函數和腳本:

如果參數達到了某個值,則可以使用控制結構cancel來終止函數或腳本。如果在函數中使用了cancel命令,該函數將在沒有返回值的情況下終止。如果在子函數或腳本中使用了cancel命令,則腳本將立即終止。

例如下圖,如果在調用的對話框中選擇[Yes](返回值為0),腳本將終止。

poYBAGLnhGaAHrlDAACyV4jS_Tg906.png

圖14終止腳本

全局變量初始化:

可以在腳本運行時調用,以每次自動初始化全局變量的值。

poYBAGLnhHeASrtjAAChR19v-Qs050.png

圖15初始化腳本

以上可能是一些常見的例子,由于編程語句體量龐大,工程師們需要根據功能需求來選擇語句。在CANape中右鍵可以導入自動的庫函數,根據功能分類,對于不熟悉語句,鼠標懸停后按F1,可以彈出help文檔,其中會顯示使用例子。

poYBAGLnhIaAR5VGAAEQbtx6CPw180.png

圖16庫函數

pYYBAGLnhJKAUGGiAAJmD4394OU446.png

圖17萬能help文檔

在我們編寫程序前,我們需要考慮以下5個步驟

1.需要用程序的主要任務2.決定如何以及何時執行程序3.開發合適的代碼4.編譯5.測試。

編程世界很大,謹此拋磚引玉。小編領進門,修行還是看個人。

古人云,工欲善其事,必先利其器;北匯信息作為Vector中國的合作伙伴,始終專注于汽車電子領域的新技術和新產品,為整車廠和零部件企業提供完整的研發、測試解決方案,為工程師在汽車領域提供“趁手裝備“!

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

    評論

    相關推薦

    自動化 SPC:企業質量與效率提升的關鍵 “利器

    自動化 SPC:以數據之力鑄就生產質量的穩固防線
    的頭像 發表于 11-06 10:32 ?171次閱讀

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

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

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

    引言 自動化技術是指利用控制裝置對生產過程進行控制,以實現生產過程的自動化。機械自動化自動化技術的一種,它主要涉及到使用機械設備和控制系統來實現生產過程的
    的頭像 發表于 07-01 09:32 ?1547次閱讀

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

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

    比斯特自動化|自動分選機:智能化時代的分揀利器

    在高度自動化的今天,自動分選機憑借其高效、精準的性能,成為各類生產線中不可或缺的重要設備。無論是制造業的零件篩選,還是快遞物流的包裹分揀,自動分選機都發揮著至關重要的作用。本文比斯特自動化
    的頭像 發表于 06-11 17:54 ?590次閱讀

    工業自動化包含哪些技術領域

    自動化的核心,主要包括以下幾種: a. 可編程邏輯控制器(PLC):PLC是一種廣泛應用于工業自動化領域的控制設備,具有編程靈活、可靠性高、抗干擾能力強等特點。 b. 集散控制系統(D
    的頭像 發表于 06-11 11:26 ?903次閱讀

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

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

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

    工業自動化自動化是兩個密切相關但又有所區別的概念。在這篇文章中,我們將詳細探討它們之間的區別,以及它們在現代工業生產中的應用。 一、自動化的定義 自動化是指通過使用機器、計算機和其他
    的頭像 發表于 06-11 11:13 ?1554次閱讀

    非標自動化設備

    1、非標自動化設備 2、根據需求設計和制造 3、完成代替人工的目標
    發表于 03-25 09:52

    晶泰科技攜手ABB機器人打造柔性智能自動化的實驗室

    晶泰科技與ABB機器人聯合打造柔性自動化、智能的未來實驗室,讓自動化設備成為科研人的手中利器,成為突破各科研領域效率瓶頸的日常工具。
    的頭像 發表于 01-19 16:49 ?1132次閱讀

    工業自動化編程語言演變的方向!

    最近在美國的一次技術會議上,ISA下屬automation.com網站的資深編輯與Arlen Nipper(Cirrus Link Solutions的首席技術官和MQTT的共同發明者)交談時,問及自動控制中編程語言的演變,請他對自動化
    的頭像 發表于 01-05 17:02 ?1026次閱讀
    工業<b class='flag-5'>自動化</b><b class='flag-5'>編程</b>語言演變的方向!

    自動化按鍵測試模組技術規格書:提高生產效率的利器

    自動化按鍵測試模組技術規格書:提高生產效率的利器?|深圳磐石
    的頭像 發表于 12-20 09:10 ?557次閱讀
    <b class='flag-5'>自動化</b>按鍵測試模組技術規格書:提高生產效率的<b class='flag-5'>利器</b>

    電源測試怎么自動化?電源模塊自動化測試系統如何實現?

    納米軟件在電測行業深耕十余年,在行業的大背景下,為了進一步完善自動化測試,開發出了新的智能的電源模塊自動化測試系統ATECLOUD-POWER,實現自動化測試,
    的頭像 發表于 12-15 14:40 ?833次閱讀
    電源測試怎么<b class='flag-5'>自動化</b>?電源模塊<b class='flag-5'>自動化</b>測試系統如何實現?

    LabVIEW與Tektronix示波器實現電源測試自動化

    自動化和數據處理的智能。通過LabVIEW編程環境連接Tektronix示波器,可以精確設置測試參數,如電壓、電流波形等,確保每次測試的一致性和準確性。自動化系統對捕獲的數據進行處
    發表于 12-09 20:37

    淺析中國工業自動化與智能應用

    自動化驅動產品與智能操控系統主要用于工業自動化中的設備自動化領域,其中自動化驅動產品是實現設備單機自動化的核心部件;智能操控系統是在設備單機
    發表于 12-01 10:11 ?991次閱讀
    淺析中國工業<b class='flag-5'>自動化</b>與智能<b class='flag-5'>化</b>應用