harlan 的部落格

about vista

vista即將要上市,release 6個版本,相信大家都對於這個全新的os很好奇,但是vista的方便性卻限制一大堆 .......請參考

Embedded system for Wireless Sensor Network

"

Embedded system其實和一般的系統幾乎一樣,也可以視為是縮小版的pc。以下會介紹在wireless sensor network應用上設計和實作。

 下圖是 TMote Sky Platform的PCB圖。對於初學者而言,找現成版子設計系統是最迅速的方法,國內也有一些代理商有提供開發版給學生使用,價格大概幾千元台幣。

 

下面這塊就是 16 bit MCU,Micro Controller Unit,現在市面上桌上型電腦都已經有 64 bit pc,而其實 16 bit CPU 已經可以做到很多事情,這也是 embedded systesm 的宗旨,小而省、小而美。

 

大部分的版子都包含 oscillator, CPU,  timer, storage ( external / internal ), input, output, 其他就看應用而定。程式碼是放在external rom上,大多是EEPROM (double E), oscillator是震盪器, 產生頻率, cpu負責用作, timer 非常重要,早起程式大多是在屬於事件驅動, 因此需要 timer 輔助, 後起有了 os 幫忙, 在上面可以做更多應用, 管理都交給 os 負責了。

 

 我是在大二時接觸 embedded system,玩硬體的人幾乎都是砸錢下去玩的。我也買了一塊 51 版子在家寫寫基本的程式,後來嘗試用電路版去製作手製的燒錄器(燒 EEPROM)。直到後期寫系統寫久了,其實最困難的大抵是在一開始找原件成本和後期的找 bug以及精簡化流程。中間那段已經變成沒有什麼門檻,和一般寫應用程式差不多。

 

在設計系統初期,考量因素很多。包含成本、板長寬高重、耐熱程度、外觀等等,這也會限制了後期的精簡化很重要的因素。

 

其實system program並不困難,就好像看一堆很繁雜的code。寫久了對於系統就會有更多的了解,像是一隻format、partition或是boot code等,大概現在已經很少人在交這些要怎麼寫,在window 32之後,也幾乎隱藏了這些system api。要走這行真的需要很多耐心和英文背景,至於程式功力幾乎不用任何,因為寫久了就會了。

 

 

 

 

 

 

"

about vista

"

vista即將要上市,release 6個版本,相信大家都對於這個全新的os很好奇,但是vista的方便性卻限制一大堆 .......

 

有接觸過windows system的玩家都了解這位人士Mark Russinovich,他是Sysinternals web site的創始人,今年因為Mark偵測到Symantec防毒軟體和Windows xp上一些問題,例如某些資料夾會被隱藏等等,靠著Mark開發的強大RKR橫行網路,於是今年Mark所創辦的Sysinternals被MS收購,這的確很像MS作風,不過Mark更在他的blog繼續他一慣作風

 

UAC(User Access Control)是vista針對安全所設計的一套架構,主要是防範開機型特徵的病毒,再進入到OS前一刻都是guest privileged。且UAC也防範了file name的限制,將有setup和install等關鍵字都視為不可侵犯的程式,包含windows內建的程式在內。

 

UAC到底是好還是壞?站在網管、軟體開發者的立場絕對是壞,因為開發和管理上限制更多。軟體開發還必須遵守UAC的規定認證才能視為符合vista相關軟體。站在使用者角度不見的是好,因為可以UAC限制了安裝和使用軟體。

 

vista在視窗上做了很大的改進,其實是仿造mac os。windows flipping功能在mac os就有了,並且還出了mac toolbar for windows xp。不過.net framework 3.0增加了Windows Presentation Foundation class,directX 10也大量運用3d技術改善GUI。同時資源消耗更大。

 

 後面再提一點,現在的bios已經不是過去的firmware bios,而是演變成Extensible Firmware Interface(EFI),甚至有uEFI。這使的bios更有彈性設計,可以在bootloading中顯示硬體相關資訊,針對強調fast-response的vista有正面幫助。而apple pc已經在使用EFI技術,但是MS先前宣佈vista不支援EFI,這也意味者往後在apple pc要裝vista是非常困難。

 

個人感覺vista的出現除了UI感覺尚可外,UAC功能的限制、ReadyBoost(USB Flash可以當成extreme memory)、Hybrid HD(這其實是先前兩位MIT researcher的發明,利用自製的os成功在512 mb flash開機,後來被韓國三星導入)等等都是缺失。

 

 The Case of the Notepad that Wouldn't Run

"

Sensor-Network Applications (IC-06-2)

"

  • summary

 
Sensor Application的發展一直都持續在進行,也一直應用在日常生活當中。隨著small-scale computing和wireless network的進步,產生了wireless sensor network相關研究。
From Intel Development Forum Intel Keynote Transcript 
 
本篇文章簡略敘述wireless sensor network需要那些technology,以及列舉出三個在研究wireless sensor network時會遇到的常見情形。 
 

  • comment

  文中引用由California Berkeley University所製的TelosB mote platform,裡面包含processor、storage、sensor、radio和energy。使用Teaxs MSP430 processor當作MCU、CC2420 IEEE 802.15.4(Zigbee)傳輸。這個platform有兩個sensors,分別是temperature sensor(溫度)和humidity sensor(溼度)。

 

 

TelosB platform circuit

 

TelosB platform使用TinyOS,特別是event-driven os,同樣也是由UC Berkeley發展。網路除了有一班的sensor node(telos)之外還有gateway node,gateway node負責聯絡外部網路。

 

 文中舉三個研究wireless sensor netwok會遇到常見問題的案例 

(1)Developing a Wireless Sensor Network on an Active Volcano

此 篇文章提出two-stage approach解決網路資源限制,包含low data rate radio和low RAM。當偵測到火山事件時,資料會存在flash RAM,然後remote pc開始接收資料,但是wireless channel只能傳少量,因此作者使用local buffering解決此問題。 除此之外,作者還改進TelosB platform佔用大空間等等問題.

(2)Monitoring Civil Structures with a Wireless Sensor Network

此篇文章式應用在monitor health of large building,作者擅用wireless sensor network的優點(建置迅速、簡易、易擴充等),比起過去傳統的wired equipment更加方便。 

(3)A High-Fidelity Sensing Testbed

本篇文章描述sensor network的測試環境,從個種不同領域測試wireless sensor network和過去sensor network的各種效能

 

  • critiques

這 個由UC Berkeley發展的架構後來被Intel改進而變成Intel Mote,Intel Mote硬體架構包含3 layers,Sensor board、Main board和Power board,也制定從上到下的stack layers,站在系統的角度而言,簡化tinyos的負擔更是重要,sleep mode和event-driven更是此tinyos的核心。

 

 

 Intel Mote appearance


 Intel Mote circuit


Intel Mote stack layers

 

  • References 
  1. Sensor-Network Applicaitons, Johannes Gehrke Cornell University and Ling Liu Georgia Institute of Technology. IEEE Internet Computing (IC-06-02)
  2.  Intel Mote 
  3. Crossbow Mote Research Platform

 

"

Multimedia Home Platform

"MHP是Multimedia Home Platform,他是一個平台,主要是標準化家庭多媒體影音,提拱protocol、API等。也可以說是整合vertical value chain的平台。

要了解MHP就要先從DVB Digital Video Broadcast說起。DVB現在是由三個歐洲電信相關標準組織制定的數位視頻標準。

DVB定義了Physical layer和Data-Link layer,包含synchronization mechanism、data transportation format等,隨著應用、頻寬不同,又可分成四種傳輸方式,包含DVB-Satellite、DVB-Cable、DVB-Terrestrial和DVB-Handheld,DVB-H是從DVB-T傳輸技術為基礎,實現行動化而出現的規格。

數位電視以前是從Set Top Box誕生,但是業界標準不一致,因此一個公共平台出現 - Multimedia Home Platform。 

MHP功能可分成三個層次

  • Enhanced Broadcasting : 有基本的靜態互動性(html)、也支援圖片和影像
  • Interactive Broadcasting : 提供更強的互動性,增加了Xlet概念(類似MIDP、Jar files)
  • Internet Access : 可結合網路服務,如E-Mail、Note等

MHP的架構分成三層

  • Resource layer : 包括CPU、Memory、I/O devices、Video/Image processor等。
  • System software layer : 包含Application Manager(也就是管理功能Navigator)、Virtual Machine,使得各家廠商硬體、軟體得以分開。
  • Applications layer : 各種服務,像是節目表、E-mail、Game等等。

也有人提出將MHP和OSGi結合應用在各方面上 .......

"

DVB

"稍微整理一下Digital Video Broadcasting DVB和Multimedia Home Platform MHP相關資料 ...

DVB是數位廣播,最早是由一些國際承認國家(其實大多是歐洲國家)所聯合組成的。大致上可以分成四類

  • DVB-S 衛星傳播
  • DVB-C Cable傳播
  • DVB--T Terrestrial 意思是無線傳播
  • DVB-H Handheld 行動傳播

標準定義了Physical Layer和Data-link Layer。也因此Device必須要有同步機制,且data是以MPEG-2方式傳遞多媒體。也因此有一系列的mechanism產生。

每一種傳播方式都不同,頻率高低也跟著不同,也因此調變方式也跟著不同。調變就是Modulation,是指在原本頻率上外加一carrier wave。

Multimedia Home Platform MHP的誕生和DVB有著微妙關係。因為各家廠商獨自的開發各自的產品和服務,因此缺乏一個共通平台,也因此才會有MHP的誕生。MHV太多了 ..... 下回分解

附上一參考網址:Digital Video Broadcast

"

整理Sensor Network

"

Sensor network分成sensing/communication和compution這三個部分。最簡單的定義就是在一個computer network中,裡面有很多個devices去monitor condition,每個device之間要互相同步communicate。detect可分成temperature/sound/vibration/pressure/motion等等。

在sensor network中,有sensor node和sink。sensor node負責collect data和route data給sink。因此就需要route algorithm。而且sensor node之間要cooperate,因此需要synchronization機制。

在wireless sensor network中可分成time-driven和event-driven兩種。time-driven也就是report data in the cycle time ( LEACH, Low-Energy Adaptive Clustering Hierarchy ),而event-driven也就是report data in the event ( TEEN, Threshold sensitive Energy Efficient sensor Network )

wireless sensor network protocol和TCP/IP差不多,不過還是有些許不同。目前研究都focus在Power Management、Router algorithm ... etc,其實都在power這方面打轉。
如果要實作,可以用Intel Mote的demo board。但是我目前會選擇朝MIMO communication方向 / task schedule / object track 擇一研究 ....

"

Wireless Sensor Network

"

昨日在專題演講剛好聽到 Wrieless Sensor Network 的部分 , 聽完之後 ....

這個領域果真很大, 而且涵蓋的範圍遠超出我想像 , 有種躍動的感覺 .....

如果從使用者角度來看 , 為何要選用這個應用 ?

如果從系統來看, 該 focus 在那個點上 ?

唉 ...... 一整個無言

雖然依照我過去的經驗切入 embedded 沒有什麼多困難, tinyos 過去我摸索過一些 , 光是一個 porting 就要搞好久, 更別說要應用在上面 ....

"

Learning Portfolio

稍早將一篇關於Visualizing the Multi-Dimensional Learning Portfolio的Paper整理一下,其實前幾天就有想到一些Idea,只是不太確定。

在這篇Paper裡面,使用了Parallel Coordinates Representation的概念,將3-dimension量化成2-dimension。因此延伸到Multi-dimension。接著引用domination觀點逆向思考,要達到某個目標,因此必須要有那些weight。

這讓我先前有接觸到的Data Mining(回去找了一下過去的資料,還有保存者精華),在這裡要首推苑老師的課程,很有趣。此時才發現有些許類似之處。Data Mining是分析Data Warehouse,而給決策者使用的簡易工具。過去是OLTP(On-Line Transaction Processing),現在是OLAP(On-Line Analytical Processing),同樣都是在Multi-demensional data model下,有distributive或是algebraic operations,分成Star schema和Snowfake schema等等。

這兩種或許可以用在E-Learning上。只是一種想法。不過前幾天思考到multi-dimensional或許不只可以用在visual上。用在肢體動作的學習可能也是可以。例如dancer、sporter或是star singer。

頁面