一種創(chuàng)建can分層樹的方法和系統的制作方法
【專利摘要】本發(fā)明實施例公開了一種創(chuàng)建TargetLink數據字典CAN分層樹的方法和系統,該方法包括:提取CAN網絡數據庫中與ECU相關的CAN消息及CAN信號的必要定義和屬性;將所述提取到的CAN消息及CAN信號的必要定義和屬性的關鍵信息按照TargetLink數據字典所支持的XML格式要求,配置和創(chuàng)建可導入TargetLink數據字典的XML文件;將所述XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹。該方法可以減少人工工作量,同時避免了人為誤差所帶來的一系列潛在影響,因此,大大提高了汽車生產制造商的工作效率,具有較好的應用前景。
【專利說明】—種創(chuàng)建CAN分層樹的方法和系統
【技術領域】
[0001]本發(fā)明涉及汽車電氣化【技術領域】,更具體地,涉及一種創(chuàng)建TargetLink數據字典CAN分層樹的方法和系統。
【背景技術】
[0002]近年來,隨著信息技術和網絡技術的蓬勃發(fā)展,汽車電氣化越來越朝著智能化方向的發(fā)展,各種機電一體化的安全系統和傳感器技術大量應用于汽車中,各種參數、常數、信號、變量、數據庫等需要由汽車的ECU (Electronic Control Unit,電子控制單元,又稱為行車電腦)進行管理和信號處理,這些電子設備對于汽車而言,實際上組成了一個CAN(ControIIer Area Network,控制器局域網絡),使得整個汽車的電氣化管理的系統越來越復雜,對于汽車生產廠商進行汽車的電氣化管理的系統開發(fā)和設計來說提出了更高的要求。TargetLink是一個從MATLAB/Simulink/Stateflow圖形開發(fā)環(huán)境直接生成產品代碼(如,C代碼)的軟件系統,利用TargetLink進行汽車電氣化系統軟件的設計和開發(fā),已逐步為業(yè)界所使用。TargetLink數據字典是這個系統的中央數據容器,能夠集中保存模型設計、代碼生成等相關信息。
【發(fā)明內容】
[0003]本發(fā)明的特征和優(yōu)點在下文的描述中部分地陳述,或者可從該描述顯而易見,或者可通過實踐本發(fā)明而學習。
[0004]本發(fā)明所要解決的技術問題是:在TargetLink設計模型上實現CAN的功能,將CAN網絡數據庫中所有與ECU相關的CAN消息及其CAN信號的所有關鍵屬性都在TargetLink數據字典中定義,作為數據字典對象供TargetLink模型引用,實現可由CAN網絡數據庫直接生成TargetLink數據字典CAN分層樹的方法。
[0005]為了解決上述問題,本發(fā)明提供一種創(chuàng)建TargetLink數據字典CAN分層樹的方法,該方法至少包括:
[0006]提取CAN網絡數據庫中與E⑶相關的CAN消息及CAN信號的必要定義和屬性;
[0007]將提取到的CAN消息及CAN信號的必要定義和屬性的關鍵信息按照TargetLink數據字典所支持的XML格式要求,配置和創(chuàng)建可導入TargetLink數據字典的XML文件;
[0008]將XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹。
[0009]作為優(yōu)選的實施例,提取CAN網絡數據庫中與ECU相關的CAN消息及CAN信號的必要定義和屬性包括:打開CAN網絡數據庫,設置與CAN消息及CAN信號的必要定義和屬性的關鍵字符串,根據所述關鍵字符串進行匹配查找,并采取逐行掃描的方式進行提取。
[0010]作為優(yōu)選的實施例,CAN消息及CAN信號的必要定義和屬性包括:消息標示符、消息數據長度、消息循環(huán)周期、消息發(fā)送方、消息接收方、信號名稱、信號的起始位、信號的位長度、信號字節(jié)順序、信號的物理單位、信號值的類型、信號的增益、信號的偏移量、信號最小值、信號最大值、信號的初始值、信號的非法值、信號的注釋、信號值定義。
[0011]作為優(yōu)選的實施例,CAN消息的必要定義和屬性的關鍵信息作為TargetLink數據字典變量組下的變量;CAN消息的必要定義和屬性的關鍵信息包括:名稱、注釋數據類別、數據類型、全局數據定標、數據位寬、信號值、最小值、最大值、地址、命名模版、組件;,CAN信號的必要定義和屬性的關鍵信息包括:名稱、注釋、數據類別、數據類型、全局數據定標、位寬、值、最小值、最大值、變量地址、命名模版。
[0012]作為優(yōu)選的實施例,CAN信號的必要定義和屬性的關鍵信息的XML標簽中包含有本地數據定標的標簽和屬性,標簽和屬性包括:注釋、轉換類型、最低有效位、偏移量、格式、單位。
[0013]作為優(yōu)選的實施例,將XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹進一步包括:
[0014]通過MATLAB的M語言,使用TargetLink API,在后臺打開TargetLink設計模型的TargetLink數據字典主文件,將XML導入進去生成最終的TargetLink數據字典CAN分層樹。
[0015]作為優(yōu)選的實施例,TargetLink數據字典CAN分層樹包括變量組和變量兩大層級,變量組定義的是變量所屬的共同組,變量為變量組下面具體的變量,CAN分層樹變量組下的每個變量是CAN網絡數據庫定義的與ECU相關的每個CAN消息的數據結構體定義,數據結構體里面的每個成員變量,就是該條CAN消息里面包含的每個CAN信號在TargetLink數據字典里的定義及其屬性。
[0016]此外,本發(fā)明還提供一種創(chuàng)建TargetLink數據字典CAN分層樹的系統,該系統包括:
[0017]信息提取模塊,用于提取CAN網絡數據庫中與ECU相關的CAN消息及CAN信號的必要定義和屬性;
[0018]XML文件創(chuàng)建模塊,用于將提取到的CAN消息及CAN信號的必要定義和屬性的關鍵信息按照TargetLink數據字典所支持的XML格式要求,配置和創(chuàng)建可導入TargetLink數據字典的XML文件;
[0019]CAN分層樹生成模塊,用于將XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹。
[0020]作為優(yōu)選的實施例,CAN消息及CAN信號的必要定義和屬性包括:消息標示符、消息數據長度、消息循環(huán)周期、消息發(fā)送方、消息接收方、信號名稱、信號的起始位、信號的位長度、信號字節(jié)順序、信號的物理單位、信號值的類型、信號的增益、信號的偏移量、信號最小值、信號最大值、信號的初始值、信號的非法值、信號的注釋、信號值定義。
[0021]作為優(yōu)選的實施例,CAN消息的必要定義和屬性的關鍵信息作為TargetLink數據字典變量組下的變量,CAN消息的必要定義和屬性的關鍵信息包括:名稱、注釋數據類別、數據類型、全局數據定標、數據位寬、信號值、最小值、最大值、地址、命名模版、組件;CAN信號的必要定義和屬性的關鍵信息包括:名稱、注釋、數據類別、數據類型、全局數據定標、位寬、值、最小值、最大值、變量地址、命名模版。
[0022]通過以上技術方案的實現,使本發(fā)明具備如下優(yōu)點:
[0023]區(qū)別于以往一般采用人工對照CAN網絡數據庫里面的每條CAN消息及其里面的所有CAN信號的定義和屬性,逐項通過手工輸入的方式,來創(chuàng)建TargetLink數據字典的CAN分層樹的方式,本發(fā)明實現了基于MATLAB的M語言,結合TargetLink API(應用程序接口),從CAN網絡數據庫,到中間XML文件的生成、再到最終TargetLink數據字典CAN分層樹的生成,整個過程中間都無需人工干預,替代了原本需要用手工來完成的工作。
[0024]通過閱讀說明書,本領域普通技術人員將更好地了解這些技術方案的特征和內容。
【專利附圖】
【附圖說明】
[0025]下面通過參考附圖并結合實例具體地描述本發(fā)明,本發(fā)明的優(yōu)點和實現方式將會更加明顯,其中附圖所示內容僅用于對本發(fā)明的解釋說明,而不構成對本發(fā)明的任何意義上的限制,在附圖中:
[0026]圖1為本發(fā)明創(chuàng)建TargetLink數據字典CAN分層樹的方法流程圖。
[0027]圖2為本發(fā)明創(chuàng)建TargetLink數據字典CAN分層樹的方法具體實施例流程圖。
【具體實施方式】
[0028]以下結合附圖對本發(fā)明【具體實施方式】作進一步的詳細描述。
[0029]為了能夠克服手工輸入方式所存在的問題,達到自動生成TargetLink數據字典CAN分層樹的目的,至少需要解決如下的關鍵技術問題:
[0030]首先,由于CAN網絡數據庫是以.dbc格式(該格式是一種保存CAN網絡數據庫定義和信息的網絡文件格式)保存的,本發(fā)明需要在這樣的文件格式當中,自動地分析和提取出TargetLink數據字典CAN分層樹所需要的與本ECU相關的CAN消息及其里面的CAN信號的定義和所有必需的屬性。其次,需要自動設置XML生成文件的正確編碼,以免TargetLink數據字典被添加后提示的編碼錯誤。再次,需要自動將CAN網絡數據庫完整地轉化為可導入TargetLink數據字典的XML文件。最后,需要自動完成最后的XML文件導入到TargetLink數據字典中。
[0031]因此,如圖1所示,本發(fā)明所公開的創(chuàng)建TargetLink數據字典CAN分層樹的方法,至少包括如下步驟:
[0032]步驟101、提取CAN網絡數據庫中與E⑶相關的CAN消息及CAN信號的必要定義和屬性。
[0033]步驟102、將提取到的CAN消息及CAN信號的必要定義和屬性的關鍵信息按照TargetLink數據字典所支持的XML格式要求,配置和創(chuàng)建可導入TargetLink數據字典的XML文件。
[0034]步驟103、將XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹。
[0035]其中,TargetLink數據字典(Data Dictionary,簡稱 DD)作為 TargetLink 設計模型的數據容器,它可以用來管理TargetLink在MATLAB/Simulink環(huán)境下創(chuàng)建的模型中應用到ECU上所需要的全部數據,這些數據包括所有參數、常數、信號、變量、結構、變量類、類型定義和定標公式等。在基于TargetLink的E⑶電控單元的軟件項目開發(fā)中,常將這些數據按照功能的劃分,構造成分層樹這樣的樹形數據結構形式,如CAN分層樹等。這些分層樹可以單獨保存成一個TargetLink數據字典文件,這些文件在一個主TargetLink數據字典文件中被關聯了具體的鏈接位置,從而形成一種模塊化的設計開發(fā)方式。
[0036]在通過TargetLink搭建CAN的應用設計模型時,CAN網絡數據庫中的CAN消息及其所有CAN信號的定義和屬性都可以在TargetLink數據字典中進行管理,即保存到一個單獨的CAN分層樹中。這個分層樹分別由Variable Group (變量組)和Variable (變量)兩大層級組成。Variable Group定義的是一些變量所屬的共同組,如input CAN (輸入CAN)和Output CAN(輸出CAN)。Variable就是組下面具體的變量,這里的CAN分層樹VariableGroup下的每個Variable主要是CAN網絡數據庫定義的與本E⑶相關的每個CAN消息的數據結構體定義。這個數據結構體里面的每個成員變量,就是該條CAN消息里面包含的每個CAN信號在TargetLink數據字典里的定義及其屬性。這些屬性至少包含了 Value (值)、Width (位寬)、Min (最小值)、Max (最大值)、Type (數據類型)、Class (數據類別)、Name (名稱)、Scaling (全局數據定標)、LSB (Least Significant Bit,最低有效位)、Offset (偏移量)、Unit (單位)、Description (注釋),這些必要的屬性在CAN網絡數據庫中都有定義。
[0037]其中,在步驟101中,需要提取CAN網絡數據庫中與E⑶相關的CAN消息及CAN信號的必要定義和屬性如表1所不。
[0038]表1:
[0039]
【權利要求】
1.一種創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,包括: 提取CAN網絡數據庫中與ECU相關的CAN消息及CAN信號的必要定義和屬性; 將所述提取到的CAN消息及CAN信號的必要定義和屬性的關鍵信息按照TargetLink數據字典所支持的XML格式要求,配置和創(chuàng)建可導入TargetLink數據字典的XML文件; 將所述XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹。
2.根據權利要求1所述的創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,所述提取CAN網絡數據庫中與ECU相關的CAN消息及CAN信號的必要定義和屬性包括:打開所述CAN網絡數據庫,設置與所述CAN消息及CAN信號的必要定義和屬性的關鍵字符串,根據所述關鍵字符串進行匹配查找,并采取逐行掃描的方式進行提取。
3.根據權利要求1所述的創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,所述CAN消息及CAN信號的必要定義和屬性包括:消息標示符、消息數據長度、消息循環(huán)周期、消息發(fā)送方、消息接收方、信號名稱、信號的起始位、信號的位長度、信號字節(jié)順序、信號的物理單位、信號值的類型、信號的增益、信號的偏移量、信號最小值、信號最大值、信號的初始值、信號的非法值、信號的注釋、信號值定義。
4.根據權利要求1所述的創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,所述CAN消息的必要定義和屬性的關鍵信息作為TargetLink數據字典變量組下的變量;所述CAN消息的必要定義和屬性的關鍵信息包括:名稱、注釋數據類別、數據類型、全局數據定標、數據位寬、信號值、最小值、最大值、地址、命名模版、組件;,所述CAN信號的必要定義和屬性的關鍵信息包括:名稱、注釋、數據類別、數據類型、全局數據定標、位寬、值、最小值、最大值、變量地址、命名模版。
5.根據權利要求1或4所述的創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,所述CAN信號的必要定義和屬性的關鍵信息的XML標簽中包含有本地數據定標的標簽和屬性,所述標簽和屬性包括:注釋、轉換類型、最低有效位、偏移量、格式、單位。
6.根據權利要求1所述的創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,所述將XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹進一步包括: 通過MATLAB的M語言,使用TargetLink API,在后臺打開TargetLink設計模型的TargetLink數據字典主文件,將XML導入進去生成最終的TargetLink數據字典CAN分層樹。
7.根據權利要求1所述的創(chuàng)建TargetLink數據字典CAN分層樹的方法,其特征在于,所述TargetLink數據字典CAN分層樹包括變量組和變量兩大層級,所述變量組定義的是變量所屬的共同組,所述變量為所述變量組下面具體的變量,所述CAN分層樹變量組下的每個變量是CAN網絡數據庫定義的與ECU相關的每個CAN消息的數據結構體定義,所述數據結構體里面的每個成員變量,就是該條CAN消息里面包含的每個CAN信號在TargetLink數據字典里的定義及其屬性。
8.一種創(chuàng)建TargetLink數據字典CAN分層樹的系統,其特征在于,包括: 信息提取模塊,用于提取CAN網絡數據庫中與ECU相關的CAN消息及CAN信號的必要定義和屬性;XML文件創(chuàng)建模塊,用于將所述提取到的CAN消息及CAN信號的必要定義和屬性的關鍵信息按照TargetLink數據字典所支持的XML格式要求,配置和創(chuàng)建可導入TargetLink數據字典的XML文件; CAN分層樹生成模塊,用于將所述XML文件導入到TargetLink數據字典中,生成并保存最終的TargetLink數據字典CAN分層樹。
9.根據權利要求8所述的創(chuàng)建TargetLink數據字典CAN分層樹的系統,其特征在于,所述CAN消息及CAN信號的必要定義和屬性包括:消息標示符、消息數據長度、消息循環(huán)周期、消息發(fā)送方、消息接收方、信號名稱、信號的起始位、信號的位長度、信號字節(jié)順序、信號的物理單位、信號值的類型、信號的增益、信號的偏移量、信號最小值、信號最大值、信號的初始值、信號的非法值、信號的注釋、信號值定義。
10.根據權利要求8所述的創(chuàng)建TargetLink數據字典CAN分層樹的系統,其特征在于,所述CAN消息的必要定義和屬性的關鍵信息作為TargetLink數據字典變量組下的變量,所述CAN消息的必要定義和屬性的關鍵信息包括:名稱、注釋數據類別、數據類型、全局數據定標、數據位寬、信號值、最小值、最大值、地址、命名模版、組件;所述CAN信號的必要定義和屬性的關鍵信息包括:名稱、注釋、數據類別、數據類型、全局數據定標、位寬、值、最小值、最大值、變量地址、命名模版。
【文檔編號】G06F17/30GK103970776SQ201310036355
【公開日】2014年8月6日 申請日期:2013年1月30日 優(yōu)先權日:2013年1月30日
【發(fā)明者】江建山 申請人:廣州汽車集團股份有限公司