Ok, 我們看過了 Mobile Device 上應用 accelerometer technology 的應用,若是我們想實做同樣的技術在 Laptop, UMPC 或是 MID 上該如何作 ?

在 Thinkpad 上有個特色功能稱為 Active Protection System,基本上就是利用偵測加速度來達到保護硬碟的功能。透過這個功能,我們可以用來偵測筆記型電腦的傾斜狀態,在 Linux 上可以透過 HDAPS 驅動硬體並取得資料。

你可以透過 Yoni Rom, Patrick Kilian 與 Robert Love 所寫的 hdaps-gl 來動態顯示筆記型電腦的傾斜狀態。

雖說 Thinkpad 的加速度偵測只有二維 (BTW, 我的 Thinkpad X60 不知為什麼 X 軸, Y 軸是相反地),但是也足以玩很多把戲,像是防盜系統 (有人碰的電腦就自爆硬碟?!) 藉由搖晃切換桌面,或者像是 iPhone 一樣旋轉畫面為橫向、直向。甚至拿來玩滾小球遊戲 neverball 、或者直接把 X60 變成絕地武士的光劍!上回 Tatsuhiko Miyagawa 來台灣的時候也見過它展示透過 Thinkpad 使用 Google Maps 的 lighting talk,非常逗趣。

若是要在其他系統上實做這樣的功能,恐怕是得外加 acceleration sensing device 才行。極強的 hacker Till Harbaum (Twonky, NanoVM, LCD2USB, BlueZ 等開發者) 自己做了兩個版本的 USB TiltStick,可以分別偵測二維與三維的加速度。透過 USB 介面,可以接到 Nokia N8XX 系列設備或是個人電腦上,同時他也將軟體與驅動程式移植到 Maemo 平台。如此就可以在 Maemo 上玩些 Enigma 的小遊戲。

非常有趣是吧,雖然 Till Harbaum 提供了完整的電路圖,不過要自己找到元件跟焊接成功對我這種電子大外行實在困難。所以比較簡單的方法大概是直接買像是 Phidgets 提供的 Accelerometer 元件 了吧。:-)

  • hi

    hdaps-gl 那個範例裡面的下載連結已經失效了耶
    可以再提供一下嗎?

  • Anddyy

    hi~先自介一下,我目前是碩二的研究生

    我上個月有自己做一個USB Accelerometer效果還不錯,自己純粹興趣作一個使用USB IC(cy7c68013)+ADC+MMA7261
    PC的UI是使用BCB作開發,可以顯示三軸的加速度
    我另外使用BCB搭配opengl作一個小3D的程式,用加速規去控制骰子動作
    因為你這篇文章有提到滿多這方面的資訊,所以好奇想知道你這篇文章的內容是如何來的?你自己search整理的嗎

    因為稍微玩一下opengl後覺得要做出一個”滾小球遊戲”這類的互動遊戲真的太花腦力了,所以不知道你知不知道有open source for opengl的相關資訊

  • @Anddyy, Hi, 對,是自行從一堆資訊來源整理出來的。不過這篇文章的概念是跟 Jserv (http://blog.linux.org.tw/jserv/) 討論出來的,他是 Open source, OpenGL, robot 開發的行家。

    已經轉發你的留言給他,有機會可討論 🙂

  • gmaxsonic[at]gmail

    Hi Anddyy,
    USB Accelerometer的詳細內容
    可以請教一下嗎
    1.輸出是USB輸出通訊協定是什麼?ASCII字串?
    2.解析度為多少?