2009年10月3日 星期六

[轉錄]由於組數及評分老師眾多,成績最晚延至10/14(三)公佈

轉錄自系上網站:http://www.el.cycu.edu.tw/Seminar/NoticeDetail.aspx?ID=721

--

書面報告成績由固態、數位、通訊三組每個老師輪流評分

書面報告成績佔50%,初賽小組成績佔50%,兩者合計取5

分,得出初賽固態、數位、通訊各組的前5名參加10月17日複

賽!

由於組數及評分老師眾多,初賽成績預計於10月14日(三)

佈!

--


10/14公布初賽名單


10/17就要尬複賽了


萬一入選不就措手不及?


雖然我想應該是不會入選啦...

2009年8月25日 星期二

原廠測試程式開發文件

手邊的

Contactless One
Developer Reference Guide
Preliminary Document V0.10



內載有撰寫Reader應用程式所需要的指引

但範例和與語法是以C/C++為平台,

如下圖為說明文件上的範例語法,

是一個C語言主控台應用程式。



但我們所使用的是要放在行動裝置上跑的應用程式,

而且是以C#為平台,

所以照著說明文件上的寫法會出問題。


轉而參考原先使用的原廠程式,我們發現引入一個文件之後

就可以動作



這個名為C1Lib_NET_PPC的元件內預先寫好了應用程式所需的成員

所以我們只要將這個元件先列入參考,就可以叫用裡面的成員來達成功能。

而所附的說明文件的內容雖然無法只接使用,但記載的成員名稱

和C1Lib_NET_PPC內的名稱相似,所以我們也可以藉由說明文件來了解成員的功用,

而Visual Studio C#內建的說明功能,則可以提供語法和用法上的支援。

讀取程式 精簡版

針對讀取所需要的程式重新寫過,
保留針對當前使用ISO 15693規格的Tag所需要的功能。

Demo程式包含讀取ID 以及測試讀取ID所需要的時間



程式畫面↓









打開程式,將comm打開並enable系統之後,點選Detect即可進行讀取,
這個流程是為了測試用,之後可以整合在系統內不需要多按兩鍵。



下圖為新程式取得的數據,讀取的時間可以降到一秒內,較原廠附屬的測試程式
縮短不少時間。


下一步將整合讀取與測試程式進行實驗。

2009年8月18日 星期二

演算法初步實現3






加了一些判斷式,讓已完成的工作可以另外表列出來。 第一二張圖是新增的程式碼。第三張圖則是測試的結果。近期將已實際讀取到的 tag ID 來測試,並實驗。

2009年8月4日 星期二

演算法初步實現2







接續昨天,今天假定了掃地,擦桌子,擦窗戶,拖地四種工作。並用計數的概念將假定特徵值(順序對)的出現次數進行累加。也自行設定了門檻值。接下來將與開發程式結合,期能著手開始實驗,以真實的Tag ID取代自己設的ID(諸如abcd)。再慢慢調整特徵值及門檻值的設定。

2009年8月3日 星期一

演算法初步實現



這是參考老師給我們讀的論文”Personalizing Threshold Values on Behavior Detection with Collaborative Filtering”中所使用演算法的初步實現。利用多執行緒的觀念,將”讀取tag ID”與”辨識”分開來寫,讓兩者同步執行以達到即時辨識的目標。

目前這個程式能做到的僅是抓出特徵順序對。未來將加入門檻值的設定,並透過實際實驗來檢視適用與否。

2009年7月10日 星期五

RFID讀取速度測試

關於RFID的讀取測試

利用程式記錄下讀取的時間

數據如下

連續讀取同一個標籤所得到的結果


測試程式每次啟動連續讀取二十次,
時間單位為毫秒(ms),
可看出讀取時間僅出現了3秒和2秒兩種結果。
原先判斷的,每次讀取新的標籤會需要較長的時間這個假設,
在第一次的測試中出現了例外,連續讀取的每一次花費的時間皆為三秒。
第二、第三次的測試中,結果為我們預期的兩秒鐘產生讀數。


兩個標籤交替讀取


測試的方式是以Reader交替讀取兩個不同的tag,預期在讀取新的標籤時,花費較長的三秒鐘。第一次測試中出現了我們預期的三秒鐘,但第二、第三次測試中卻又很一致的只使用兩秒的例外。


墊高Reader進行讀取的時間


我們將Reader墊高約5~10mm,對單一Tag進行連續測試,試驗距離對讀取速度的影響。
同樣的,第一次測試的20項取樣,接為耗費三秒,之後的第二到第四次取樣除了標出來的一次樣本之外,其他接為一致的2秒鐘。


總結,RFID Reader讀取標籤的時間為2秒或3秒,和距離無關。
先前假設的,連續讀同樣的標籤耗費時間會比讀取不同標籤來的短是錯誤的,現在尚不知道其變因為何。

但從樣本空間來看,似乎是每一個項目的第一次測試,皆為耗費三秒,之後就都只要兩秒鐘,大膽假設,是在讀取器閒置一段時間後再進行讀取,速度會比較慢,但為何是整個測試的20份
樣本,都耗費了三秒,還需要進行思考。


另外RFID 讀取時間是否能夠更改,目前尚未找到方法,正在閱讀原廠Demo程式說明書,尋找是否有相關功能存在。

2009年7月6日 星期一

RFID讀取速度

RFID reader 讀取 tag 需要多久的時間?讀取時間可以做調整嗎?麻煩你們測試一下。Thanks ^_^

2009年7月3日 星期五

讀書會

老師在這裡Activity Recognition有幫我們收集一些工作辨識的文獻。希望暑假這段期間,我們能夠至少一週閱讀一篇文獻,並利用讀書會的時間彼此分享心得或其他想法,當然你們也可以將心得放在你們的網誌上。

你們先從這篇論文讀起。
*Maja Stikic, Tâm Huynh, Kristof Van Laerhoven, Bernt Schiele ADL Recognition Based on the Combination of RFID and Accelerometer Sensing, Pervasive Health 2008, Finland (pdf)

讀書會時間: 7/13(一)下午2:00
地點:圖書館B1討論區。

2009年6月28日 星期日

闖關遊戲 想法

可能預設幾個項目ex 電燈,書櫃,窗戶,椅子等會議廳會有的東西,
在上面放置RFID tag,然後記錄下來tag ID。
在程式中將tag ID和這些物品做連結,寫一個Random物件,
程式啟動之後要依序找到對應的tag感應,然後給一個解除炸彈的訊息,
然後順序錯或是時間到的話就顯示炸彈爆炸之類的,應該不至於無聊
只是不知道做這件事會不會很沒意義浪費時間就是了。

聊聊6/30期末成果發表 準備

輾轉得知,老師覺得期末報告的時間不需要太長,大約三四十分鐘,保留一些時間給與會朋友操作看看PDA,玩玩看硬體,所以我大概構思了一下報告的綱要,其中主要兩個大方向是互相衝突的,所以討論看看哪一個比較妥當。

第一個是比較制式的,概論的:
一、說明我們的專題跟精障服務工作的關係、精神,合作情景,願景。
二、解釋我們目前在做的工作,原理,思考方向,與未來工作。
三、進行這些工作可以學習到哪些項目。
四、硬體操作時間,Q&A



第二個就比較專攻性質的
綱要大概就是把第一項拿掉,二三四項做比較深入的說明,把知道的全托出來,同樣地包括硬體時間跟Q&A。


兩者的差別在於第一種的會比較不深入,但聽起來內容是比較平易近人,怕會有給人閒聊感覺的反效果,第二種的話則是擔心首次接觸的人會很難吸收。

然後我看看可不可以簡單設計一個闖關遊戲,利用做為硬體時間的橋段,藉由遊戲的方式呈現我們製作工作辨識的一個概念。是一個構想,可能也用不上什麼檯面上的演算法,就是呈現一個感覺這樣。

大家討論看看囉

2009年6月12日 星期五

RFID Demo程式閱讀 擷取TagID 6/12更新

目前已經找到了存檔路徑,也成功在資料夾中建立檔案,並且依序讀取資料後加入指定檔案。
但目前僅僅輸出Tag ID,接下來將思考輸出更完整的資料。
目前啟動輸出功能需要由額外按鍵啟動,希望接下來可以將功能整合到原先內建的Detect鍵當中,以簡化流程。

待.txt檔功能完整後,將進行XML檔的嚐試。





ps.希望老師不要把我當掉,才有下學期的努力空間.....

2009年6月10日 星期三

RFID Demo程式閱讀 擷取TagID

本文重點:擷取TagID

此系列工作重點在於理解RFID Reader的應用程式(以下簡稱PnpDemo),熟悉並且能加以修改,加入需要的功能以利工作辨識的進行。PnpDemo能夠讀取、寫入資料於 RFID tag,現階段工作目的為建立讀取過RFID tag之編號的紀錄,首先要建立的功能為擷取RFID tag ID,並且存成檔案。

利用Visual Studio2005可以對PnpDemo的C#專案進行閱讀和編輯。主程式中的許多敘述都以Tag type加以分別撰寫,所以我們可以針對我們工作使用的ISO15693的部分重點閱讀。

針對尋找讀取TagID的部分,並非採用逐行閱讀的方式,既然有了明確的目標,我們從frmMain.cs的設計界面中,先找到了顯示ID的textbox 控制項名稱,再以其屬性"txtTagID.text"去搜尋,我們在frmMain.cs中第153行找到了MyTag.ID。利用加入簡單的 MessageBox做了一個小測試,的確可以提供我們需要的ID參數。

但我們不能直接在frmMain中加入指令索取 MyTag.ID,我想是因為MyTag這個物件是在系統讀取到Tag之後才會建立的,直接由MessageBox存取會造成系統Compile時產生錯誤,因為在那時候MyTag其實是不存在的。因此我們在原本的敘述當中,加入了另外一個變數去存取MyTag.ID,如此一來即使在程式的起始狀態還沒有 MyTag存在,MessageBox指向一個空變數也不會造成Compile的錯誤。

當中MyTag.ID為一個String型別的資料,所以我們在frmMain.cs當中定義一個String 變數,使我們得以存取,並且在測試之後成功顯示。

接下來要做的工作是存成檔案,C#有現成的方法可以將資料存成.txt檔案,日前在電腦上已經做過測試成功,理論上只要套用上去就可以work,但有路徑問題需要克服。

在電腦當中我們已經很習慣型如C:\為開頭的檔案路徑,但在PDA當中,並沒有明顯可見的磁碟機代號的存在,必須加以了解其路徑運作模式,才可以將檔案存在指定的位置。現階段我們欲嘗試的方法,是僅僅在檔案IO的語法上僅指定檔案名稱,在電腦上這樣的動作會使得.txt檔存放在程式的母資料夾。倘若在PDA上也行得通,那即使我們無法指定檔案出現的位置,也能夠取用檔案進行分析,尚稱堪用。

2009年6月1日 星期一

RFID Demo程式閱讀

嚴格來說,這算不上是一篇進度,
但可以說是接下來一個工作的小方向。

在Demo程式的閱讀雖然未有很大的%數,
但其傳遞標籤資料的class和變數不難看出來是寫在哪裡。

能夠得知我們需要擷取的物件變數等參數之後,
建議針對C#語言中的file I/O的語法作研讀,
這是建立辨識資料輸出的必要知識。
接著是判斷數值或字串的相等,搭配判斷式來建立辨識程式的基礎。

以C++為例
判斷數值是否相等
可以用if(i= =j)

但在字串比對上
則要使用
strcmp(a字串,b字串)
strcmp應該是String Compare的意思
當兩字串相等時
strcmp會回傳0;若不相等則會回傳大於0或小於0的數。

另外應該也有回傳系統時間的函數
有利於讓我們以時間進行讀取資料的分類與命名

這兩天應該會生出幾個小程式 當作辨識程式的陽春範例

端午連假回家陪爸媽綁粽子
差點連腦筋一起給綁進去了
收假後是該加班趕進度了...

2009年5月13日 星期三

分工

專題報告的分工目前是

林延駿: 背景 相關應用 演算法 未來工作

胡國治: database 硬體部分



而接下來進度分工....

1.原廠DEMO程式閱讀理解(每週兩次) BOTH
2.資料庫建制(每週一次)胡國治
3.比對演算法(每週兩次)林延駿
4.程式硬體(每週一次) 胡國治為主,我則視情況幫忙協助

2009年5月7日 星期四

RFID 讀取測試一

RFID Tag 讀取測試一
"RFID Reader直接讀取tag標籤"

使用Sirit PnP Rfid Demo應用軟體作為讀取的介面。
該程式在啟動時 PDA需要確實安裝SDIO的讀取元件,
倘若出現錯誤訊息,則將讀取元件重新插緊,通常可以排除狀況。


一進入程式的初始狀態


PDA裝上SDIO的讀取裝置


SDIO的讀取元件


背面



進入程式錯誤時的訊息 重新插入讀取元件即可解決 造成的原因通常是卡片沒有插好



該程式具有Detect、Read、Write三種Function。Detect Function可以讀取16位的Tag ID、Tag type,還擁有Attempt、Reads兩個參數,以及一個開始感應的Detect Button。手邊配置的Tag無論卡式或貼紙式皆能讀出一個16位的Tag ID以及ISO 15693的Tag Type,而Attempt是觸發Detect之後嘗試讀取的次數,reads原本以為是讀取到的標籤數,但後來發現有一張以上的ID重疊,會有讀取上的障礙*,所以暫時還沒試出這個讀數的意義。

讀取到Tag的畫面


Read Function同樣可以讀取到ID與Type的Info.,除此之外還可以讀取到Tag內部儲存的資料(Tag Data),我們拿到的卡片在讀取的時候Data欄是空白的,Tag Data的部分可以在Write Function寫入。在讀取Tag Data的時候,英數半形符號可以順利讀取,全形英數跟繁體中文在讀取的時候皆會以"?"取代,無法正常顯示。

同時輸入中文與半型英數符號 在以Read Tag讀取所得到的畫面


Write Function則是提供PDA可以簡單輸入Tag Data的介面
可以選擇輸入Tag Data的格式,經過嘗試目前只能在ISO 15693的規格下進行寫入以其他規格進行寫入都會得到Write failed的訊息。而在ISO 15693的環境下可以有255個字的輸入,包含中英數的輸入,而寫入成功之後會得到Success的訊息。Tag Data在Write這個Function中,也可以作清除的動作,也就是說Tag Data是可以反覆讀寫的。

無法在此格式下寫入,得到失敗訊息


中英數三種文字都可以順利寫在Tag裡 但PDA不能讀?


--
*:會在系列文"讀取的障礙"中加以說明

2009年5月1日 星期五

972 專題進度





專題報告內容:

一、 背景

二、 相關工作項目(介紹一下 RFID應用)

三、 ProtoType原型機(硬體)

四、 設計(演算法+硬體)”取樣、量化、演算法”

五、 未來展望

2009年4月15日 星期三

4/12 1800 製作進度3

RFID 延長模組 進度報告 4/12(Sun.)

根據上篇進度報告上指出的執行障礙過粗的烙鐵頭以及錫線我們嘗試尋找更好的替代品不過並無所獲。
我使用的XYTronic 168-3C銲槍所使用的烙鐵頭在鄰近幾家電子零件材料行都沒有販售,而含銀、細線徑的焊錫也因普遍單價過高而沒有採購,只補充了必要的MINI to SD轉接卡兩張。


為了克服所遇到的問題,參考了萬志學長提供的方法並商借了配備尖頭烙鐵的HAKKO 936銲槍組以及含銀焊錫,且另外加強了兩人的合作。


學長提供的幾樣方法包括用海綿沾水清潔烙鐵頭、吸錫器的使用,在失敗的兩次案例中皆已使用,所以這次我們重點在於嘗試預先上錫的作法並且強調了上的錫不能太多,避免焊點過大影響組裝與短路的問題。搭配了含銀的錫線以及借來的銲槍,再加上兩人合作使得物件穩定性提升許多,確實增加了效率與成功率。

SD卡槽之延長模組



經過了測試能夠成功讀寫資料。證明我們進行的這種直接延長的作法可行。


接著我們進行了下一階段的工作。
MINI SD規格的延長卡,我們發現在卡片接點的配置上遇到了問題。



請參考下兩圖
"MINI卡延長模組接線示意圖"



MINI to SD轉接卡


我們可由示意圖發現,Micro SD僅有八個接點、MINI SD有多達11個接點而SD卡為9個接點。
並可知MINI SD轉SD卡 MINI的5、6號腳位是空接,不使用到就可以完整對應SD卡的九個接點,所以不構成影響。
但Micro 的8腳位轉MINI的11腳位 ,MINI的5、6和8號腳位在轉接卡上沒有對應的接點,導致從Reader上轉出來的線中,橘色的線沒有對應的接點可以連接,直接影響的便是SD卡六號接點讀寫的資料沒有辦法傳遞。
我們經過搜尋,在網路上找到的接點圖版本不一,所以我們也無法準確判斷六號腳位實際的功能為何?
決定先閒置,將其他的接點焊起並組裝。
"完成圖"
後續的檢驗測試顯示, MINI卡本體上並沒有斷路或短路的問題。但由於我們沒有MINI的讀卡機,而在透過MINI轉SD轉接卡進行測試時,發現許多接點都呈現斷路的狀況,所以測試的工作沒有辦法進行下去,整體工作還需要有更多的突破。
"兩延長模組"
活動式讀卡槽模組 以杜邦2.54線組連接
卡片與接頭








2009年4月10日 星期五

4/10 0800 製作進度2

目前已完成了插槽部分
連接埠採用杜邦2.54規格的9P連接部 基於設備問題
第一組延伸卡片製作失敗

第二組的狀況有稍微改善
但在組裝面上還是有問題無法克服

兩組屍體

製作模組卡片端時
嘗試許多種方式
但最後還是作失敗了兩個
而SD型態轉接卡也只預備了兩份
沒有材料繼續完成。
另一方面,會造成兩次失敗
原因為SD卡內部轉接構造精緻
而我們使用如下圖的烙鐵頭,
對於此次工作,相對於我們要焊接的目標
算是大得多,導致焊接無法精緻化,甚至現在尚未有任何功能可以使用



目前計畫再添購SD轉接卡回來重新嘗試
另外改裝電烙鐵,配備細尖頭鐵頭以利作業
另外考慮將錫線也使用更細的裝置,
最後甚至採用的杜邦線也考慮不直接與延伸卡做連結,而先使用更細小的線組將接點導出,再連結上杜邦2.54的插頭。

但由於卡片精巧,施工面有非常大的問題,例如高溫使得卡片變形,或是接點距離太近,會造成短路。
整個焊接的過程 到目前為止 距離當初預設的難度有相當大的差異

4/10 0800 製作進度1


實現RFID 延伸模組方案
以NOVA資訊廣場以及電子材料行為主要採購對象

由於讀卡機插槽為較專業的零件 一般電子材料行皆無販售
解決方案為拆解市售最基本款的SD讀卡機


拆解後和學長提供的樣本做比較 從正面看應屬同一款 只有LED指示燈顏色不同
但從背面看 明顯的左邊的讀卡機SMT物件較多
測試發現 左邊的讀卡機為SD讀卡機 右邊的讀卡機為MMC讀卡機
下圖為SD卡與MMC卡的比較
左側MMC卡的讀取點僅有七個 而SD卡的讀取點有九個
在使用上 SD讀卡機可以相容讀取MMC卡片
但MMC的讀卡機讀取SD卡片時變會出現失敗
下圖為手機上的MMC讀卡槽

自製RFID延長方案

由於RFID模組的感應距離有限

故需要有一延伸套件 將RFID延伸至使用者手掌位置 長度大約為40~50公分

由前篇文章所列 日本已有相關研伸商品

但國內並沒有代理商引進

因此擬訂此案製作該套件


物件構想如上圖

是以SD reader的插槽 焊上一連接埠 再連接到延伸卡片插入PDA機身卡槽

達到延伸效果。

使用連接埠的目的在於 只要製作一組插槽,搭配SD 或 Mini SD的延伸卡片

即可對應不同卡槽之PDA裝置。

由於延伸卡片的製作 預計將現成卡片拆解 再焊上延長線組

而現成卡片的來源將以市售價格較低的轉接卡製作

轉接卡的規格僅有 Mini SD轉SD Micro SD 轉 SD 以及 Micro SD 轉 Mini SD

亦即沒有Micro SD型態的轉接卡存在

如需製作Micro SD的延伸卡 勢必要拆解記憶卡 著實浪費

故本案以製備Mini SD 和 SD卡的延伸模組為目的。

2009年4月8日 星期三

miniSD或microSD槽插SD的產品

1
2
3
4
5
6
有很多這種產品,但是不幸的是都不在台灣....