999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

WinCCflexible組態多國語言的切換

2019-05-21 04:54:04劉青華
中國新技術新產品 2019年8期

劉青華

摘 要:該文主要介紹了使用VB腳本代碼,通過TXT文本文件對人機界面的語言進行字符替換,也就是使用TXT文本文件進行字符替換,以達到人機交換界面的多國語言信息切換功能,同時該文也簡單描述了在WinCC flexible基本實現代碼。

關鍵詞:WinCC flexible;腳本控制;TXT文本

中圖分類號:TP311 文獻標志碼:A

隨著科學技術的進步和國際化的發展,自動化生產線的進出口逐年增加,由此促進了制造業技術的升級,同時增加了自動化行業國內外之間的交流。在自動化生產線的日常使用過程中,觸摸屏作為重要的人機交互界面,在生產線上得到了廣泛的應用。尤其在復雜程度較高的設備上,觸摸屏具有不可替代的地位,其靈活、方便、直觀等特點,可以顯示豐富的內容。

但是由于操作者使用的語言不同,就需要將不同的語言信息顯示在人機界面上。這樣,人機界面顯示信息的多國語言切換問題就擺在了我們面前。筆者接下來將會把在工作的過程中遇到的多國語言切換的幾種方法介紹給大家,為大家在工作中遇到同樣問題時提供一些提示。

1 WinCC flexible自帶切換功能

WinCC flexible本身是自帶多國語言切換功能的。在日常工作中,如果需要切換多國語言的話,就可以直接使用。具體操作步驟為:

首先,將需要的項目語言添加到項目里,在WinCC flexible項目的“語言設置”中選擇“項目語言”選項。

然后,在WinCC flexible所支持的語言列表里,選擇需要添加的項目語言。象需要在項目中添加英語,那么就在“英語(英國)”前面打上對勾。

第三,在“設備設置”中的“語言和字體”選項中就可以找到英語(英國)的選項,在英語(英國)前面打上對勾,這樣就可以在HMI設備上加載英語了。

當然這只是為了添加多國語言,在這之后我們需要在“項目文本”中輸入對應的翻譯文本,從而完成多國語言用戶界面的設置。

2 腳本控制語言切換

上面介紹的方法大部分的WinCC flexible的使用者都用過,這里只作簡單的介紹。在日常使用中還有一種情況是需要解決的,那就是I/O域的字符處理。因為有時候,為了靈活的處理信息,有人習慣使用I/O域來顯示報警信息和提示信息。這樣做的原因有很多,其中一點就是所有的信息編輯都是在PLC端完成的,這樣修改或添加信息只需要在PLC程序中完成,而不用修改HMI組態,這樣有利于程序的結構化編程。但是由于各種原因,經典的WinCC flexible I/O域配合DB塊,并不能很好的支持中文字符與ASCII之間的切換,遇到這種情況我們就可以使用WinCC flexible的腳本編寫一些代碼,實現中外文信息文本的切換,這也是該文詳細介紹的一種方法。

3 腳本控制語言切換的代碼實現

這種方法的具體想法是通過定義信息代碼,然后根據信息代碼將報警信息字符以固定的格式保存在文本文件中,HMI通過腳本以信息代碼為索引在相應的文本文件中進行查詢,并把與信息代碼對應的文本信息顯示在I/O域上。象我們把英語信息保存在EN.txt中,中文信息保存在CN.txt中,這些文本文件中需要顯示的信息文本在*.TXT中,中文文件顯示格式:“0001;氣壓報警”;英文文件顯示格式:“0001;Pressair alarm”。這樣就可以根據HMI上選擇的語言,通過WinCC flexible的腳本功能,將文本信息顯示在觸摸屏I/O域內。下面將具體介紹實現這個功能的WinCC flexible腳本代碼。

首先,得到當前語言類型代碼,這里 LanguageNumber為變量名,作用是獲取語言類型代碼。一般情況下,使用前一定要在先定義好,定義變量的語句為:“Dim LanguageNumber”。在后面的程序中,還會使用一些變量,因為篇幅有限這里就不一一寫出變量定義語句了。

LanguageNumber=HmiRuntime.Language

然后,根據得到的語言類型代碼,確定當前runtime運行的語言類型。如果是2052則代表當前顯示語言為中文,2057則是英文。Language是字符串變量,“CN”或者“EN”就是保存文本信息的文件名,后面會使用這個變量調用文件。

If LanguageNumber=2052 Then

Language="CN"

ElseIf languageNumber=2057 Then

Language="EN"

End If

準備文件操作,fileStream和filesystem的變量類型為文件。

Set fileStream=CreateObject("ADODB.Stream")

fileStream.LineSeparator=-1

fileStream.CharSet="unicode"

fileStream.Open

Set fileSystem=CreateObject("Scripting.FileSystemObject")

在更新字符前,先刪除顯示的內容,TXT_Display是在WinCC中定義的字符串變量,用以顯示字符信息。

SmartTags("TXT_Display")=""

檢查多國語言信息文件是否存在,如果文件不存在則退出腳本程序。

fileName_FixedText="C:\"& language &".txt"

If (Not (fileSystem.FileExists(fileName_DetailledText))) Then

SmartTags("TXT_Display")=fileName_DetailledText&"does not exist"

Exit Sub

End If

判斷文件已經存在后,就可以查找并替換字符以完成文本的翻譯。具體實現想法為,將文本文件讀出,然后使用Split函數將文本分隔為報警信息數組,然后對數組進行操作,使用REPLACE函數根據報警編號進行字符替換。

讀取翻譯文件,將文本文件分割成字符串數組、分隔固定字符(報警號),分隔符為換行回車。

fileStream.LoadFromFile(fileName_DetailledText)

detailledTextArray=Split(fileStream.ReadText(-1),vbCrLf)

這里detailledTextArray為已經分隔為每一條報警信息的字符串數組,這個數組里包含報警號及報警信息。然后是處理信息顯示的部分,"PLC_Message"為PLC中的變量,保存的是當前需要顯示的信息。首先得到的是需要顯示信息的序號。然后作循環,在信息文本中找到相應的信息號,然后將原有的信息替換為需要顯示的語言的信息文本。

plcMessage=SmartTags("PLC_Message")

Do Until(i>(UBound(detailledTextArray)-1))

If StrComp(Mid(plcMessage,1,4),Trim(Split(detailledTextArray(i),";")(0)),0)=0 ThenmessageTranslated=Replace(plcMessage,Mid(plcMessage,5,20),Trim(Split(detailledTextArray(i),";")(1))

End If

i=i+1

Loop

然后將HMI的變量賦值,得到需要顯示的結果。

SmartTags("TXT_Display")=translatedMessage

最后,關閉TXT文件流,這樣程序的一些基本功能就實現了。

fileStream.Close

以上,就是使用TXT文本文件進行字符替換,以達到多國語言信息切換的一種實現方法。該文介紹的是如果按照這種方式實現,則需要使用VB腳本代碼。如果要在WinCC flexiblee中完整實現功能,還需要一些錯誤的處理程序代碼,才能保證程序的穩定性及完整功能的實現。

參考資料

[1]Guy Hart-Davis.VBA從入門到精通[M].北京:電子工業出版社,2008.

[2]何文雪.PLC編程與應用[M].北京:機械工業出版社,2010.

主站蜘蛛池模板: 国产精品蜜臀| 国产成熟女人性满足视频| 四虎国产精品永久在线网址| 制服丝袜国产精品| 老司机精品一区在线视频| 亚洲天堂网2014| 婷婷色中文网| 欧美日韩亚洲国产| 99re66精品视频在线观看| 亚洲精品中文字幕无乱码| 免费网站成人亚洲| 在线播放精品一区二区啪视频| 午夜激情婷婷| 亚洲天堂网站在线| 国产a在视频线精品视频下载| 亚洲人成影视在线观看| 午夜在线不卡| 欧美国产中文| 国产精品丝袜视频| 国产精品大尺度尺度视频| 无码日韩精品91超碰| 国产乱人视频免费观看| 国产96在线 | 88av在线播放| 日韩黄色大片免费看| 久久综合丝袜长腿丝袜| 亚洲日本www| 亚洲欧美日韩中文字幕一区二区三区| 免费国产不卡午夜福在线观看| 亚洲国产AV无码综合原创| 四虎在线观看视频高清无码| 国产美女在线免费观看| 日本一区二区三区精品视频| 免费观看男人免费桶女人视频| 67194亚洲无码| 日韩精品毛片| 国产欧美另类| 亚洲三级影院| 孕妇高潮太爽了在线观看免费| 九色在线观看视频| 国产一区亚洲一区| 久久久久久尹人网香蕉 | 欧洲免费精品视频在线| 男人天堂亚洲天堂| 久久久久亚洲av成人网人人软件| 538国产在线| 人妻熟妇日韩AV在线播放| 日本一区二区三区精品AⅤ| 少妇露出福利视频| 国产精品免费露脸视频| 中文字幕精品一区二区三区视频 | 亚洲色图欧美激情| 亚洲视频三级| 国产成人综合久久精品下载| 国产视频一区二区在线观看| 呦视频在线一区二区三区| 国产精品永久久久久| 欧美性久久久久| 欧美日韩亚洲国产主播第一区| 91网站国产| 四虎成人在线视频| 麻豆a级片| 久久这里只有精品66| 人妻免费无码不卡视频| 久久久久久国产精品mv| 国产婬乱a一级毛片多女| 久久99精品久久久久纯品| 国产偷倩视频| 国内精品视频在线| 漂亮人妻被中出中文字幕久久| 国产日韩欧美在线播放| 国产在线91在线电影| 久久精品国产91久久综合麻豆自制| 囯产av无码片毛片一级| 亚洲三级a| 69综合网| 无码'专区第一页| 国产精品无码作爱| 亚洲欧美另类日本| 国产成人精品日本亚洲77美色| 沈阳少妇高潮在线| 91精品啪在线观看国产91九色|