首頁 公司 產品 產業/方案 服務 夥伴 客戶 論壇 ICE Developer Center Site Map          [搜尋]
ICE Developer Center Overview Register Training LearningSpace Workshop ICE Messaging Express MOM Glossary
Member Login Download GetLicense Support Profile iReal Program Logout

 .艾揚即時訊息技術電子週報 < ICE Messaging Weekly >. 

第 71 期 出刊日期:2004.05.11 本報內容由 艾揚科技 (ICE Technology Corp.) 提供

嵌入式裝置的遠端監控程式開發 ── 使用 iPush® Embedded

本期內容大綱

 
[編輯手扎] ICE Messaging Editor's Note  郭漢丞   

再談「後 PC 時代」

四年多前「後 PC 時代」這個名詞才在資訊業界炒得沸沸揚揚,不過事實是經過四年的經濟景氣榮枯,PC 產業依然茁壯蓬勃,只不過內容與時俱進,越來越貼近消費者需求,也越來越人性化 ;不過我們怎麼會連續兩次在編輯手札裡面談到這個似乎「過氣」的老名詞呢?

與「後 PC 時代」一起出現的新名詞是「IA 」:Internet Appliance,似乎只要跟網際網路扯得上邊的裝置,大概 行銷包裝就有了著力點。不過當時因為頻寬基礎建設的限制、終端裝置耗電量過高、設計未臻成熟等等因素,許多新出現的應用都有過度「早熟」的現象,也因而提早夭折。

不過這些條件在四年之後來看,似乎已經不成問題:頻寬不斷擴充、中央處理器耗電量降低、供電系統效率提升、以及廠商更加重視工業設計內涵。看來「IA」應該已經要蓬勃發展了。但實際卻又不然,會使用 PDA 來取代 PC 上網的還是少數,Set-top-Box 裝機數量可能還沒有液晶電視多,手機的網路加值服務還是流行的鈴聲下載最紅,卻不是大家設想的「功能性」服務。應該要蓬勃發展的 IA 產品,到底怎麼了?

回歸艾揚的老本行,IA 行不行,不能輕忽的是資訊流通是否夠快夠順,所以在發展即時訊息傳遞伺服器的道路上,艾揚一方面把 iPush®> 的功能盡量做到完善,一方面還努力把 iPush® 變得越來越小、卻來越輕便。所以我們發展了新的嵌入式應用:iPush® Embedded。當然,我們希望有一天 IA 裝置都能 iPush® 化,不過務實來看,消費型產品要全面導入 IP 化應用,還要一點時間,所以我們把重心放在民生攸關的應用,放在專業的「即時」需求,應用的裝置也脫離了 PC 的範疇。

我想,「後 PC 時代」未必是「去 PC化」,但是絕對是讓更多裝置 「IP 化」與「全面通訊能力搭載」,把「主動資訊節點」的概念發揮出來,或許才是思考「後 PC」的重心。

 

 
[訊息論壇] ICE Messaging Forum   塗能宇

<實作篇> 嵌入式裝置的遠端監控程式開發 ── 使用 iPush® Embedded

對傳統嵌入式裝置的操作或管理人員來說,嵌入式裝置部署之後,大部分只需要做定期維護,很少會每天檢查它的工作狀況。若是想要存取嵌入式裝置內的資料, 則是透過數據機或 RS-232 直接連線的方式,將嵌入式裝置內的資料擷取出來。

以為很安全的嵌入式裝置

大部分的嵌入式裝置看起來都很穩定,想當然爾應該不會出什麼差錯。但嵌入式裝置往往還是逃不過莫非定律的主宰,「可能會出錯的地方一定都會出錯」,而且 ,常常是無法彌補的大錯。

講一段小故事,小編以前唸的是土木水利相關科系,加上服役時又在某測量單位服役,常需要上山下海坐船漂流到外島去蒐集嵌入式測量儀器的資料。經常好不容易花了幾天到了現場,才發現外表看起來 固若金湯的「嵌入式」裝置已經被偉大的大自然力量 (風吹、日曬、雨淋) 摧殘的差不多了。

抱著最後一絲希望將嵌入式裝置接上筆記型電腦 RS-232 纜線,期待老天不要那麼不給面子。不過,通常跟買樂透彩一樣,天命注定,測量裝置裡面少則幾個禮拜、多則數月的資料,也一併回歸自然。於是統計數據上,就出現了短則數天,多則數百天的空白。然後祈禱因這些統計資料遺漏而產生的誤差,老天爺不會拿來做為來日開玩笑的藉口。

沒有不斷線的數據機

當然有數據機跟電話線的裝置就好一些,電話打通了,資料順利回來的機會就很高。不過問題在於:

  1. 電話打通後能不能不要中途斷線?

  2. 要打多少支電話?

  3. 會不會記得交電話費?

傳統嵌入式裝置的數據機,速度都在 9600 bps 或以下 (2400 bps 以下的,亦所在多有),跟現在大家唉聲嘆氣嫌貴嫌慢的寬頻,真是不可同日而語。若是儀器資料量多一些,資料點數多一些,除了祈禱傳資料時不要斷線,大概坐在電腦前面收資料可以收一整天。

那時候常常在想,以遠端方式存取嵌入式裝置內的資料,如果能夠跟區域網路存取資料的速度一樣,或是同等方便,那該有多好?除了歷史資料統計的精確度可以提高,更不用擔心哪一天嵌入式裝置被大自然強制退休後的資料遺失,也不用在電腦前面枯坐一整天,還怕數據機中途被不明原因斷線 ,必須重頭再來。

Internet 對嵌入式裝置的影響

當然 Internet 如野火一般的開始普及之後,許多 Internet 常見的服務也都加入到嵌入式裝置中。很多的嵌入式模組,已經提供乙太網路的介面,可以很方便的在區域網路中存取資料。而 以往存在桌上型電腦作業系統的檔案傳輸 (FTP) 與遠端登入 (Telnet) 功能,或近幾年的 Web 伺服器,也都被加入到嵌入式裝置系統中。

這些方式,雖然可以滿足大部分的需求,但是缺點是:每要一次資料,還是要對每一個嵌入式伺服器進行連線要求,而且,很難即時監控到所有點位的即時資料。

iPush® Embedded 提供了一個遠距即時監控的解決方案

針對以上這些問題,iPush® Embedded 提供了一個透過 Internet 的遠距多點即時監控方案,除了補強 FTP、Telnet 和 Web 對即時性訊息的支援不足,更方便管理人員對數量眾多、分散各處嵌入式裝置上的資料進行即時監控。

圖一、iPush® Embedded 提供一個遠距即時監控資料的機制

以這個範例來說,只要 WinCon-8000 連上 Internet 網路,不論監控端的距離有多遠,都可以即時監控到其所有 I/O 模組上的資料。同時,iPush® Embedded 還提供了遠端管理的能力,方便使用者進行「遠端」、或是「無螢幕 」的嵌入式系統設定。

使用 iPush® Embedded ActiveX API + Visual Basic 進行遠端監控程式設計

在正式進入遠端監控程式設計實作課程之前,先簡單介紹一下我們將會用到的 WinCon-8000 相關 I/O 模組,以及相關的使用者設定。

輸入輸出設備簡介

我們在此使用的是泓格科技 WinCon-8000 上面的類比輸入模組 i-8024類比輸出模組 i-8017H,同時採用的是類比輸入輸出對接的方式,方便我們檢視相關的測試結果。

圖二、採用對接方式的類比輸入輸出模組 i-8024 (左) 與 i-8017H (右)

由於類比值具有隨時間變動的特性,所以資料不斷地在變動,不斷地傳送出來。雖然我們可透過設定敏感度及頻率,來調整相關的資料擷取方式,但在這個範例中,我們直接套用系統預設的設定即可。

程式設計基本概念

當要對 iPush® Embedded 下達相關的操作命令時,其實整個資訊流流程是像圖三這樣子的:

圖三、當一個命令由遠端 Application 下達給 iPush® Embedded (置於 WinCon-8000 內) 連接的裝置模組流程

我們以 ActiveX 元件使用為例,首先遠端的 Application (應用程式) 利用 iceHMsg.ocx 將資料編碼並包裝成一個 Variant 物件 ,然後利用 iPush® API (在此使用 iPushX.ocx 元件) 將資料送出。iPush® Embedded 收到後 ,會將 Variant 物件傳送給 I/O 模組裝置介面,執行所需的動作。

在這裡,我們使用兩個 iceHMsg.ocx (iceHMsgIn.ocx 和 iceHMsgOut.ocx) 分別處理由 iPushX.ocx 傳送的輸入和輸出資料 。

遠端存取帳號設定

下面圖四,說明了我們要為遠端存取所進行的設定作業。

在範例中,我們使用的 iPush® Embedded 預設帳號資料是:

Company: ice
Product: ice
Username: ice
Password: ice

預設的讀取權限 (Read Permission) 與寫入權限 (Write Permission) 都是「*」,代表可以讀寫任意的 Subject;而預設讀取權限 (Default Permission) 則是給予代表不能訂閱任何 Subject 的「- 」號:

圖四、利用遠端管理程式 Remote Administration 檢視與修改有關的使用者權限設定

登錄元件與引用元件

前面提到 iPush® Embedded 會使用 iceHMsg.ocx 將訊息編碼包裝,然後交由 iPush® API 傳遞 給安裝在 WinCon-8000 上的 iPush® Embedded。

所以就使用 Visual Basic 來說,程式設計前要先註冊 iPushX.ocx 及 iceHMsg.ocx

圖五、註冊 iPushX.ocx
圖六、註冊 iceHMsg.ocx

該二元件註冊成功之後,就可在 Visual Basic 建立專案時,引用此二元件,以便在表單中使用。

圖七、在 Visual Basic 中,引用此二元件

即使在微軟新的 .NET Framework 中,使用元件的方式也相當類似。我們將在下一期,做簡單的介紹。

連線處理

在進行連線時,只要使用 iPushX.ocx 控制項,以及設定相關的連線參數:IP、Port、使用者名稱、密碼等,還有一些和 iPush® Embedded 相關的編解碼參數設定,我們都將實作在 [Connect] 按鈕事件中。

圖八、按下 [Connect] 鈕後會執行的連線程式碼

Subject 的命名方式

在 WinCon-8000 中,存取 I/O 模組即時資料所需的 Subject,其命名規則是依照「WC8K.系統名稱.模組名稱_插槽號碼.Tag 群組」來表示的。

我們的範例使用了兩個 I/O 模組,分別是在第 1 個插槽的類比輸出 i-8024 模組,以及在第 2 個插槽的類比輸入 i-8017H 模組。同時使用這兩個模組的第一組接頭 (Tag);所以兩個 Subject 分別是:

  • WC8K.Chobits.8024_1.Analog1

  • WC8K.Chobits.8017_2.Analog1

我們在範例中,只會用到這兩個 Subject;其中 Chobits 為出廠時的預設系統名稱。

傳送類比輸出模組的設定資料 (Publish)

在進行資料設定時,需要將要設定的資料類型及值,先用 iceHMsg.ocx 包裝成 Variant 物件,然後利用 iPush® API 將資料送出。舉例來說,若要將 i-8024 的輸出值設定成 +1.1 伏特,則可以用以下的敘述:

Dim floatValue as Double
floatValue=1.1

IceHMsgOut.setFloatProperty "AnalogOutput", floatValue
varContext = IceHMsgOut.packSubjectMessage

iPushX1.ipushSendSubjectBin strSubjectFullString, varContext, UBound
(varContext) + 1

在上面的敘述中,就是將 1.1 這個數值和 AnalogOutput 命令包裝在一起,然後使用 setFloatProperty 這個方法,將資料包裝進 variantObject 中。整個過程可分為下面幾個步驟:

  1. 取出使用者輸入在 Analog Out 文字方塊的數值。

  2. 利用 iceHMsg.ocx 包裝資料。

  3. 用 iPush® API 將資料送出。

整段傳送資料的程式碼如下圖九所示:

圖九、這一整段就是按下 [Publish] 按鈕後執行的資料傳送動作

訂閱類比輸入模組的資料 (Subscribe)

而訂閱某一個模組上的某一組 I/O 點位資料時,也僅需要指定所要訂閱接收的對應 Subject 即可。

在此我們要接收的是 i-8017H 模組上第一組 I/O 點位資料,所以整段訂閱 Subject 的程式碼如下:

圖十、訂閱類比模組資料的方法

其中 iPushX1.usingSetData = 10 的意義是:

右邊的個位數代表

0 - 接收 DataReceived 事件

1 - 接收 SetData 事件

2 - 接收 SetData2 事件

左邊的十位數代表

0 - 接收 SubjectReceived 事件

1 - 接收 SubjectBinReceived 事件

在 iPush® API 中,傳送不同的資料種類時需要對 API 的屬性做一些調整。由於 iPush® Embedded 傳送的物件是 Variant 格式的 Byte Array,所以需要使用 Using SetData = 10。

關於更詳細的說明,請參閱 ICE Developer Center 內有關 iPush® V1.5 SE ActiveX API 的說明文件,以獲得進一步資訊。

接收類比模組資料

在 iPush® Embedded 中,資料的接收都是透過回呼函式 (Callback) 來完成,以便進行資料 接收後的邏輯處理。在這邊我們只做兩件事:

  1. 用 iceHMsg 解開編碼的資料。

  2. 將資料顯示在 Analog In 的方塊中。

圖十一、實作接收即時資料的函式

完成並執行連線

這個範例程式完成後,可以在一般的 Windows 作業系統 (NT/2000/XP) 中執行。依序按下 [Connect] 鈕、[Subscribe Analog Input] 鈕後,即準備好 要接收來自 i-8017H 模組的即時資料了。

下圖是在 Analog Out 欄位輸入 5 (V) 值後,按下 [Publish to Analog Output] 鈕的操作結果:

圖十二、從 i-8024 送一個 5 V電壓訊號,再從 i-8017H 收到資料的結果

所有模組上的點位資料,都可以套用類似上例的遠端處理方式,完成資料即時傳送或是即時接收的工作。20 時鐘就解決了以前必須爬山涉水才能得到資料的辛勞。

  • 完整範例程式碼與執行檔下載 >> Download ! (Zip, 11 KB)

在下一期的內容中,我們將進一步討論如何利用幾乎相同的程式碼,在 Excel、PDA 上展現即時的資料擷取。



1 2 3 4 5 6 7 8 9 10
有點重要  
非常重要

 


[訊息先生信箱] Ask Mr. Message    Mr. Message  


<Developer Andrew 來信詢問>

從貴公司的產品介紹中得知,iPush® Server V2 的版本分為 Standalone、Cluster、與 Cluster Gold 三種,請問 API 都是共用的嗎?

<Mr. Message 的答覆>

Andrew 您好,感謝您來信詢問。

是的,所有 iPush® Server V2 的客戶端應用程式開發介面 (API) 都是共用的。換句話,您利用任一類 API (ActiveX Control、Java Package、Linux C ......) 所開發的 iPush® 應用程式,都可以與任一版本的 iPush® Server V2 連線,進行即時訊息的傳遞。

如此一來,在服務部署上線的擴充上,可以因您業務增長的需求,保有 Server 版本變換的彈性與透通性;而這也是 iPush® Server V2 產品設計不同版本的目標之一。

歡迎來函詢問 Mr. Message 任何與訊息有關的技術、產品、應用、實作、商務問題,Mr. Message 必將竭誠答覆。

 go top

[艾揚快訊] ICE Express   ICE Developer Center  


<快訊一> 

iPush® Server V2 - application guide for GIS 文件開放下載 (04.30)

想要深入了解 iPush® Server V2 如何整合 GIS,以創造更即時的地理資訊應用嗎?

請下載由艾揚科技精心編撰的 iPush® Server V2 - application guide for GIS: 如何讓 GIS 擁有即時訊息能力 (Enable real-time messaging ability for GIS)。

大綱如下

  1. 前言:GIS 的意義

  2. 為何需要即時訊息傳遞?

  3. ICE iPush® Communication Server

  4. 如何讓 GIS 擁有即時訊息傳遞能力?
    (一) 既有做法
    (二) 使用 iPush® Server 的做法

本文提供三種語言的 PDF 格式檔案,敬請下載:

go top

<快訊二>

ICE Financial Suite SDK Workshop 教育訓練課程首度亮相,感謝學員熱情參與 (05.06)

艾揚科技的 ICE Financial Suite SDK Workshop 教育訓練課程,首場在五月六日正式開跑,現場聚集了 來自台灣各家金融業的資訊菁英,學習以及實際操作艾揚這套簡單但威力強大的開發環境,繼而期望能夠為公司開發新的加值服務。

此一專業的教學課程,包括艾揚即時金融訊息整合方案的介紹、艾揚核心產品 iPush® Server、xQuote SDK、以及 iReal® Framework 的解說與操作說明,相信無論對管理人員或實際應用的工程師來說,都收 獲豐富。

由現在熱烈的發問與討論的狀況,再次證明艾揚創新產品的無窮魅力。

照片 1、參與踴躍,聚集多家金融資訊菁英到場聽課

照片 2、學員聚精會神瞭解 iReal® Framework 的實際運用與操作

接下來還有多場的教育訓練課程,歡迎您親身體驗!詳細課程情形,請參考艾揚教育訓練網頁 >> Go !


上一期精采內容:iPush Embedded 合作夥伴 ─ 泓格科技研發處處長陳峙柟專訪


若您覺得本期內容值得參考,請轉寄給認識的朋友或同事,為國內的訊息技術社群發展盡一份力。感謝您。 

免費試用 iPush Server,請連結 ICE Developer Center 網站:http://www.icetech.com.tw/icedc,進行 Register → Login → GetLicense → Download 作業即可。

訂閱與取消訂閱本電子週報,請連結 ICE Messaging Weekly 網站:http://www.icetech.com.tw/icedc/weekly.shtml

查閱本電子週報舊有出刊內容,請連結 ICE Messaging Weekly 網站:http://www.icetech.com.tw/icedc/weekly.shtml

 

回艾揚即時訊息技術電子週報主頁 | 上一期

Copyright 2002-2004, 艾揚科技股份有限公司版權所有;歡迎轉寄。
關於電子報發送有任何問題,或是欲轉載內容,請連絡 icedc@icetech.com.tw
台北市 100 羅斯福路二段 9 號 12 樓之 1 ,TEL: +886-2-2396-1880,FAX: +886-2-2396-1881

Unsubscribe >>
欲取消訂閱艾揚即時訊息技術電子週報 (ICE Messaging Weekly),請 Mail 至 icedc@icetech.com.tw
主旨註明:取消訂閱艾揚即時訊息技術電子週報 即可。



艾揚科技股份有限公司  台北市 103 承德路二段 81 號 15 樓之 1   電話:+886-2-25586101   傳真:+886-2-25586102

Copyright © 2002-2008 ICE Technology Corporation. All Rights Reserved.