2015年8月29日 星期六

教育學習類-台大醫院臨床參訪心得

  由於申請台大暑期課程-臨床觀察與需求探勘,下午前往台大醫院心導管室。一開始對於「心導管」概念十分模糊,但實際進入心導管室後,帶給我相當深刻的體驗。
  踏入臨床觀察前,需要先更換醫護專用衣褲、帽子與鞋套,戴上口罩;接著與醫師討論心導管的結構、材料、使用方法、應用的病症、可能導致的風險、成功率、使用後病狀的復原率等等。心導管顧名思義就是一種醫療用的導管,孔徑只有數mm;當心臟或是其他部位的血管因脂肪堆積或細胞不正常增生而發生狹窄或即將阻塞時,為了使血管恢復暢通,需清除血管壁多餘的物質。在過去未發明心導管時,可能採用開刀切除等方式。但隨著醫療技術、材料科學的進步,目前採用心導管穿進血管,沿著血管建立通道後,將氣球或網狀支架撐大血管,擠壓管壁物質,使血管管徑回復適當大小。若是較粗的血管常採用支架,較細的血管支架無法穿入則使用微型氣球。
  在實行過程中有許多挑戰,例如如何判斷血管狹窄位置?如何選用規格適當的心導管?如何將心導管引入血管,從刀口順著正確的方向直到狹窄處?心導管穿入血管的過程中,調整力道與幅度該如何控制?
  在病患執行心導管手術前,先安排電腦斷層掃描(CT)與核磁共振(MRI)檢查,可評估狹窄位置,依據血管彎曲幅度等因素規劃心導管引入路徑,按照血管粗細、路徑、不同廠商醫材特性選用心導管。接著重頭戲是如何引導心導管到達目的地,觀察心導管術進行時,由開刀口穿入導絲,導絲較柔軟易穿梭於血管中,心導管再順著導絲前進。最讓我感到驚訝的,是穿入導絲、心導管的過程為了即時觀看狀態,X光是連續照射的,如此才使得醫療觀察室及臨床螢幕上的醫學影像不斷更新,可以明顯看到血管位置與心臟的搏動,生物學的理論真真實實的呈現在眼前。醫師執行心導管術為避免暴露於X光輻射中,需穿上鉛衣、配戴鉛眼鏡。醫療觀察室與手術台所間格的透明玻璃亦含鉛,以避免X光穿透。術中X光機外觀類似C字形,一端發射一端接收,可經由控制移動至不同角度位置,從即時的影像可以動態撥放或切換至特定影格,整個手術室約有十多台螢幕,顯示MRI立體影像、心電圖、血壓、X光影像結果。X光影像經過特殊運算處理,已去除胸骨的部分,使得血管更加明顯。
  親身踏進醫院確實有許多感受、萌生更多想法,感謝臺大醫院王醫師、林醫師、助教黃醫師與其他醫療人員的指導及全組隊員間的交流。

※文章僅敘述參訪感想,對於生醫領域認識有限,有關更詳細、更專業的內容請見參考資料。

參考資料:

  1. 認識冠心病和心導管介入性治療
    李冠偉 彰化基督教醫院 心臟血管科主治醫師
    http://www.cch.org.tw/cchhec/knowledge_detail.aspx?oid=121
  2. PHILIPS (飛利浦)手術型C-arm X光機介紹:
    http://www.cych.org.tw/cychweb/cych2/machine_photo.aspx?machine_id=8


2015.7.21初稿

2015年7月24日 星期五

從正反器、栓鎖器到隨機存取記憶體(RAM)-一個積沙成塔的故事

  今天來談談記憶體。說到「記憶可以聯想到什麼?坊間已有書籍討論人類大腦記憶的運作,依時間長短分為短期記憶與長期記憶;人們在生活中,為了避免遺忘大大小小的事情,而有了備忘錄、行事曆。在電腦的設計中,也有類似的結構,使得輸入的資料能夠保留、儲存。事實上,所有的電腦系統,不論超級電腦、工作站、伺服器、個人電腦(PC)或是微電腦(microcontroller)、嵌入式系統(embedded system),記憶裝置是不可或缺的。如果沒有記憶元件,電腦將難以處理資訊註1

  既然記憶元件如此重要,它的結構、原理如何呢?從數位邏輯課程中的循序邏輯(或稱序向邏輯)得知,正反器與栓鎖器具有暫存一位元數位資料的功用(詳細電路分析請見數位電子學),當我們把數個栓鎖器排成一組,即可暫時存放多個位元的資料註2。由於當初定義1個位元組(Byte)為8個位元(bit)所組成,且傳統常用的ASCII碼(共7位元,能表示阿拉伯數字0~9、英文字母大小寫)加上一同位位元檢查碼註3即為1 Byte,故現今記憶體多以Byte表示。從過去的數KB、數MB,到目前的GB等級,其中的「B」必為大寫,代表Byte;與網路傳輸速度的Kbps、Mbps不同,小寫的「b」代表bit(單一位元)。

  所以,如果將八個栓鎖器組合在一起,即可存放一個ASCII code,例如英文大寫字母A以01000001(二進位,十六進位寫法為41H)表示。在市面上確實有八個栓鎖器包裝為一組的數位IC,如編號74373、74573等。接著,如果要存放更多的ASCII code呢?因應大量儲存的需求,廠商便將更多的暫存器組封裝起來,成為隨機存取記憶體,即RAM。RAM內部有許許多多的暫存空間,如何減少線路同時能夠控制每個空間所存放的資料呢?這時採用「匯流排」的架構是很好的方法。

  在介紹匯流排之前,先稍微討論一下「致能」這件事。為了縮減電路的複雜度,我們將每組暫存器的輸入相連接,輸出相連接。有些類似將一戶戶住家民宅匯集成社區,共用一個出入口的概念。此時避免衝突,致能控制便決定了出入口的使用權歸屬,確保單一時間只有一個位址使用;假設A接收到致能信號,其餘B、C、D等便不得使用出入口。直到A使用完畢,才將使用權讓給其他位址。實務上致能控制常與解碼電路結合,關於解碼電路的說明,留待之後另外撰文討論吧。

  一般電腦內部的匯流排大致區分為三類型:資料匯流排、位址匯流排及控制匯流排。以市面上的隨機存取記憶體(AMIC Technology之1M X 16 Bit X 4 Banks Low Power Synchronous DRAM產品,型號為A43E26161)為例,16 BITs相當於2Bytes,可見資料匯流排共16條線,對應至DQ0至DQ15接腳,代表每個位址可存放2Bytes的資料。1M則表示該記憶體具有2的20次方(=1048576)個空間,理論上該記憶體的位址匯流排應有20條,參考datasheet可知藉由栓鎖器與二維空間設計,記憶體位址又分為Row及Column,因此外部A0~A11位址匯流排具備多工特性。需配合控制匯流排RAS、CAS與CLK信號才可正確定址。

  談了這麼多,簡單介紹了記憶體的身世;隨著科技不斷發展,除了傳統的SRAM、DRAM外,MRAM(Magnetoresistive Random Access Memory,磁阻式隨機存取記憶體)在未來將成為市場趨勢,屆時將有更大的容量、更高的效能。



註1:部分簡單的電路確實不需要電子式記憶元件,例如以開關的ON、OFF進行表決,可以透過組合邏輯方式判定是否通過。但開關的二段式特性即具備記憶功能;且此類型的系統不屬於「電腦」。



註2:多個栓鎖器排成一組時,按照時脈連接方式不同又可設計出四種串/並列輸入輸出模式:

1、並入並出(parallel-in parallel-out)

2、並入串出(parallel-in serial-out)

3、串入並出(serial-in parallel-out)

4、串入串出(serial-in serial -out)



註3:同位元檢查(Parity Check)用以檢測資料在傳輸、儲存過程中是否發生錯誤,但未提供校正功能,與漢明碼(Hamming Code)不同。同位元檢查分為奇同位檢查與偶同位檢查,詳細介紹可參考數位邏輯相關書籍。

附錄:

74AC574三態輸出緩衝栓鎖器主要特性:

功能簡述:Octal D-Type Flip-Flop with 3-STATE Outputs
電源電壓(Supply Voltage)範圍:2~6V
輸入電壓(Input Voltage)範圍:0~Vcc(V)
輸出電壓(Output Voltage)範圍:0~Vcc(V)
直流輸出最大電流(DC Output Current Maximum):±50mA
當Vcc=5V±0.5V時,最高工作頻率:220MHz
※一般的低功率蕭特基(Low Power Schottky)晶片如74LS574,工作頻率上限約數十MHz。
最大工作電流(由Vcc供應,DC VCC or Ground Current):±400mA
操作溫度(Operating Temperature)範圍:-40~+85℃
74574共20支接腳,有八個D型正反器;當CK輸入脈波正緣信號,資料栓鎖,由OE控制輸出狀態。
以上晶片資料來自
http://pdf.datasheetcatalog.com/datasheet/SGSThomsonMicroelectronics/mXvuruu.pdf

參考資料:

1、泛科學-你還記得嗎?
http://pansci.tw/archives/62911

2、datasheet查詢參考:
http://www.datasheetcatalog.com/

3、A43E26161 datasheet:
http://pdf.datasheetcatalog.com/datasheets2/11/1150068_1.pdf

4、維基百科-正反器:
https://zh.wikipedia.org/wiki/%E8%A7%A6%E5%8F%91%E5%99%A8

5、維基百科-電腦記憶體:
https://zh.wikipedia.org/wiki/%E9%9B%BB%E8%85%A6%E8%A8%98%E6%86%B6%E9%AB%94

6、維基百科-漢明碼:
https://zh.wikipedia.org/wiki/%E6%B1%89%E6%98%8E%E7%A0%81

7、維基百科-磁阻式隨機存取記憶體:
https://zh.wikipedia.org/wiki/%E7%A3%81%E9%98%BB%E5%BC%8F%E9%9A%A8%E6%A9%9F%E5%AD%98%E5%8F%96%E8%A8%98%E6%86%B6%E9%AB%94


2015.7.18初稿

2015.7.19增訂1

教育學習類-參與2015台大生醫黑客松心得

  最近五天前往台大參加2015生醫電資營X生醫創新黑克松,是十分可貴的經驗、也帶給我許多收穫及成長。難得之處在於透過活動匯集各項專業領域的人才齊聚一堂,學員涵蓋各學校如:台大、交大、中山、陽明、中國醫藥大學等,各系所:醫學、牙醫、物理治療、電子、資工、機械、商管等,與部分業界人士,親身體驗想法見解的熱烈交流,不斷腦力激盪,除了激發創新點子,更開拓了視野,從中體會跨領域合作的重要性。
  自從踏入理工科系,著重在技術層面,長期關注電子科技業動態;生病就醫之外,少有機緣接觸醫學界專家。有時總認為,應該執著於單一專長,精益求精,致力追求卓越。但在這次黑客松,由三位醫師、一位設計師、一位資管系及一位業界人士與我共同組隊,雖彼此背景不同,溝通方面也有些差異,討論時醫師之間的專業術語、醫療用詞除非附註解釋,否則我便一知半解;在一場關於arduino應用的workshop中,有位主修機械的學員,在實作當中也有些困難,但這些電子零件、電路的基本原理、使用、特性對於電子、資工等電資學院學生而言應是瞭若指掌,甚至是雕蟲小技,手中拿起元件,腦海立即浮現使用方法,聆聽講者的說明能夠舉一反三。俗話有云「隔行如隔山」,有位從事醫療工作的講者提出一則小故事:有位工程師詢問醫師,這手術的「良率」有多少?這是相當難以回答的問題。假設回答99.9%,就製造觀點代表每生產1000個中有一個故障,故障率低;但是醫師的產品是病患,總不能每治療1000名病患中有一名會死亡吧!況且每位病患皆獨一無二,如此一來如何評估「良率」呢? 
  在團隊中,為了製作產品原型,長庚醫師、醫材業界Glenn與我一同前往光華商場找尋適當的材料。走進材料行,醫師與Glenn對於琳瑯滿目商品感到十分好奇,這些皆是EE的小玩意。我們找到溫度感測的sensor,小小一顆,價格260,印證了智慧敷料想法所需要的元件確實可以取得;價格看似較高,但若在量產上是可以壓低成本的。至於PH sensor則相當少見。最後決定以導電度量測製作prototype。雖之後在實作中因雜訊與資料傳遞介面上有些技術問題,但理想上想法是可實現的。在查詢感測器時,發覺感測器必須夠微小才得以被穿戴式裝置所採用,因此讓sensor微小化大概是穿戴式設備發展很重要的前提之一。
  如果已掌握某一類型的事物,具備解決問題的技能,從多元整合的角度,夥伴之間經由觀點交換、發想的過程,確實能突破單一知識未能克服的難題!如同在黑客松,醫療人員希望解決的痛點,對工程人員來說可能只要花點時間,進行設計開發,原型作品是有機會實現的。尊重每一種專業,同時展現自信發揮所長,貢獻一己之力的精神,是我在整個活動所看到的價值;相信這樣的價值能夠帶給社會進步的動力,促進人類的生活更加美好。


H.I.T-Health, Inspiration, Technology

相關連結:

2015台大生醫電資營X生醫創新黑克松:
Nordic-nRF51-DK mbed:
Brain Rhythm:
2015.7.9初稿
2015.7.10修訂1

2015年6月30日 星期二

教育學習類-給程式初學者的建議

  電腦的發明對人們的生活造成深遠的影響,學習編寫程式亦成為世界的一股風潮。有時在FB社團、課堂中,看到剛接觸程式設計的初學者詢問「學習程式很困難嗎?」、「該選擇哪一種語言學習呢?」日常生活人與人之間需要溝通、交談對話。其實程式就像交代電腦按照我們希望的步驟,一一完成工作罷了;只是「步驟」需要嚴謹點!坊間有相當多介紹程式概論、設計、甚至演算法、資料結構的書籍,本篇僅簡單地提供程式初學者些許參考意見,希望踏上這條新的旅程能夠更順利愉快。

  不論哪一種語言,一開始學習只要寫出「Hello World!」註1,大概就算是入門了。每種程式都有方法,控制資料的顯示。編寫出「Hello World!」就代表已掌握了顯示靜態資訊的方式了,可以寫出任何想呈現的數字、文字、符號,甚至是換行,透過排列組成圖案。

  接著進入第二階段-讓程式進行簡單的運算及判斷,這時設計適當的輸入資料,讓程式處理後得到結果。這部分使用變數的宣告、判斷語法,接著是迴圈的使用。常見的問題大多是語法錯誤,如變數未宣告(undefined)、重複宣告、宣告名稱錯誤(像是使用不允許的特殊字元)、是否正確插入分號、括號、換行與對齊……等等。可以透過練習熟悉語法,逐漸熟練後這方面的錯誤便減少了。

  進入第三階段-學習進階技巧並運用程式解決問題。如陣列、副程式、遞迴、指標、字串處理、檔案輸入輸出等進階技巧可以讓程式更彈性、多元,或增加編寫的效率。解決問題是學程式很重要的目的,也是最需要思考、長時間累積經驗的部分。有些問題相當著名,如費氏數列計算、圓周率計算、質數判斷搜尋、河內塔(或譯漢諾塔)、大數運算等,書本、網路皆可查詢到許多解決之道,甚至能比較不同方法之優劣!但初次碰到這些問題時,若能在查閱答案前,試著用心的思考,即使最終並未成功,對於培養計算性思維(Computational thinking)依然有些幫助。當面對未知的難題,或許google找不到解答,只要大腦靈機一動,說不定馬上迎刃而解囉!



註1:或許有些人從arduino、Keil C等平台,甚至組合語言學習程式開發,這些與硬體控制相關語言的「Hello World!」,可以視為讓一支I/O port為1(高電位)或為0(低電位)。總而言之,「Hello World!」是程式最基本的功能之一。

2015.7.1 初稿

2015年6月20日 星期六

教育學習類-淺談電腦檔案系統概念

  昨天把相機SD卡中的相片、影片copy到電腦上;剛將讀卡機接上電腦,顯示磁碟、進入資料夾後突然當機一陣子!隨後整個SD卡就出現需要格式化的訊息如下。


  當下立刻退出,嘗試以chkdsk修復,執行後磁碟區出現了,雖然已使用、未使用容量看似正常,但資料夾中檔案全消失了!使用磁碟救援軟體掃描,照片回復回來,但影片幾乎不堪使用。
  談起為何以讀卡機、電腦讀取SD卡,會導致磁碟檔案損毀呢?格式化又是什麼呢?
  坊間已有許多書籍、網路上亦有相當多資料討論檔案系統架構、管理和運作。本篇只淺談大多檔案系統的概念。
  每一顆磁碟、隨身碟,每一張記憶卡都像一本書籍,一本筆記本。假設剛剛到3C賣場購買了一個隨身碟,隨身碟一般拆封後即可直接使用(與隨身硬碟一樣,但內接式硬碟就不同了,需要先格式化)。當我們把檔案放進去時,就像我們在筆記本上記下資料,只是這筆記本已經規劃好目錄區」與「資料區」,記下資料的同時也在目錄區新增索引。


  上述資料區所記下的資料僅是簡單比喻,實際上檔案儲存時的開頭和結尾可能有特定的符號代表,舉例如下(在此假設@為資料起頭,#為資料結束)

  在這裡可以試想一個情況:如果資料、目錄讀寫到一半突然中斷,是什麼樣的狀況呢?
  • 狀況一:目錄讀寫到一半中斷
      上述目錄區資料42的結尾頁碼發生寫入錯誤,在往後讀取資料42時,僅檢視目錄便不曉得該讀到哪裡結束了!這時候就需要進行修復:經過目錄比對,資料43P345開始,所以推知資料42的結束是P344
  • 狀況二:資料讀寫到一半中斷

      這樣的狀況下,資料便損毀了;對應資料與目錄,資料41P291結束,資料區卻無#符號!即使磁碟修復,資料也難以復原。
  接著討論資料的刪除,前述的內容已將一個個檔案視為一個個資料區塊。如將一個檔案刪除,在此以資料1刪除為例;一般完整的刪去應同時修改目錄區資料區」;但如果資料量龐大,修改資料區的時間便較長,若要重新排序則更加花費時間。因此現今的作業系統進行檔案刪除時,僅修改了目錄。


  當資料1被刪除,目錄中P1P3視為空白,可寫入新的資料。但尚未寫入新的資料前,資料區原本記錄的資料1仍存在!這便是為什麼雖然按下刪除,看似無法還原了,經過軟體深層掃描,還是有機會回復的原因。
  在實際檔案系統中較這些比喻複雜許多,目錄在技術上稱為「檔案配置表(File Allocation Table)」,頁碼就相當於硬碟的磁區、隨身碟或SD卡等快閃記憶體裝置上的區塊(block)。由於檔案不斷新增刪除,導致同一資料區存放的頁碼可能不連續,在目錄損毀的情況下即使資料完整仍有可能無法順利復原!定期備份才是保護資料的有效方法。

參考資料:
硬碟的儲存格式:

維基百科-檔案系統:


維基百科-快閃記憶體檔案系統:

DiskGenius硬碟 磁碟 USB隨身碟 資料遺失救援 磁區格式化 都能救回 很棒的工具程式(圖片參考)


2015年6月18日 星期四

教育學習類-arduino在學習微電腦上所帶來的影響


  曾經看過一篇標題名為「Arduino\NXT 有害論」的網路文章,簡單發表一些淺見。


  一般電路中運算控制核心晶片,依照硬體特性大致可分為三個族群:第一類為MCU-Microcontroller Unit(微控制器),整合ALU(Arithmetic Logic Unit)、控制單元、記憶單元(RAM、ROM)與I/O介面,可以設計適當的軟體,對晶片進行燒錄(program),內部的控制單元便根據燒錄在ROM裡面的程式依序執行。如傳統的8051家族(89C51、89S51等)、Arduino UNO上面的IC-ATMEGA328P、Arduino Mega上面的ATMEGA2560等就是這類的晶片。近年來MCU功能日趨強大,高階晶片內建FLASH,DMA控制器,甚至支援USB protocol(如Texas Instruments公司的MSP430F55系列MIXED SIGNAL MICROCONTROLLER晶片)。


  第二類為MPU-Microprocessor Unit(微處理器,亦簡寫為µPs),一般內部具有ALU(Arithmetic Logic Unit)、控制單元、高速I/O介面,記憶單元除了快取記憶體(cache memory),RAM、ROM及A/D、D/A延伸功能需要外部擴充。舉例而言:較早期的晶片如Zilog公司的Z80(1976問世)、Intel 公司的8088、8086(約1980年問世)皆為此類;目前MPU多用於高速運算處理系統,進行大量的資料信號分析,如個人電腦中統稱的CPU(Intel Core i3、Core i5、Core i7、Xeon系列等)。


  第三類為PLD(可程式邏輯元件)系列,不論PEEL、CPLD、FPGA等,皆透過VHDL、Verilog硬體描述語言決定晶片功能;這類晶片只有數位I/O,若需要A/D、D/A功能亦需設計外部電路。使用這類晶片,需要對硬體邏輯架構有較多了解,且設計時需要考慮時脈同步、邏輯閘延遲、電路化簡與最佳化的問題。


  Arduino的產生,很大一部分依賴晶片技術的進步,當功能強大的MCU日漸普及,取代過去一一獨立的控制晶片!在過去10年或更早,常見的是「單板微電腦」,上面佈滿許多IC,舉例如下:


●8237:direct memory access (DMA) controller-直接記憶體存取控制器


●8255:Programmable Peripheral Interface (PPI) chip-可程式並列I/O介面


●8259:Programmable Interrupt Controller (PIC)-可程式中斷控制器


●8279:Keyboard/Display Controller-鍵盤/顯示控制器


  詳細datasheet網路上即可下載,我們可以很清楚的看到、量測到微電腦系統運作時信號的傳遞、處理;但在整合之後,電路板上的晶片數量減少了,雖然處理方式大同小異,我們卻更難認識、學習微算機的操作-訊號全部藏在IC內部處理完成了!我們比較過去的主機板與現代的主機板(圖片來自維基百科),也可以看出些端倪:

參考資料:

●Arduino\NXT 有害論:


●Intel chipsets:


●主機板圖片:


●8088 datasheet:


●8088微電腦電路:


●Texas Instruments公司MSP430F55系列MIXED SIGNAL MICROCONTROLLER晶片datasheet:


2015.6.15初稿



教育學習類-Maker Faire Taipei 2015心得




  今天的華山文創園區-Maker Faire 2015,可說是自造者的盛會。
  人潮來來往往的展場裡,機器人、四軸或多軸飛行器的出現已不太令人意外,反倒是有一個攤位,桌上擺放著數個乍看之下難以猜測其功能的作品,寫著英文的說明,不禁引起好奇上前詢問。原來是位日本人,來自株式会社鳥人間-大概是一間工作坊,專門研究IoT(Internet of Things,物聯網)、嵌入式系統、手機app、PCB設計和開源硬體等等。一問之下就用英文對話起來了!首先談一架滑翔式的飛行器,可藉由改變機翼弧度調整飛行方向;更特殊的作品,是一個稱為DNA Amplifier的裝置,根據介紹,似乎是一個可以放置DNA樣本,藉由溫度的調控提供基因複製有利的環境,覺得十分新奇!注意了一下DNA Amplifier其中一個模組上的晶片:VNH3SP30,上網查詢Datasheet,其功能描述為FULLY INTEGRATED H-BRIDGE MOTOR DRIVER(完整智慧型H形馬達驅動器),大概是用來驅動風扇轉速及轉向了。



  近年來Maker風潮盛行,大概是起源於兩項物品的普及:一是3D printer;二是arduino。在過去,一般人在生活中突發奇想,可能靈光乍現,腦中閃過一個點子、一個創意;但由於專業技術複雜、接觸門檻高、需要投入相當的資金成本等因素,在實現過程中遭遇許多困難。隨著時代變遷,我們有了不同的選擇。先談3D printer,目前3D列印技術不斷革新,製造簡單物品不必依循傳統鑄造、灌模等程序,就精密度而言亦較純手工製作佳;有了3D列印,只要將圖繪製出來、找來3D列印機與適當的原料,經過數個小時,機器便自動加工完成。在3D列印之後,甚至發展出更先進的方式,如CLIP 技術,試圖提升精密度、縮短製造時間。

  再來是arduino,arduino起源於義大利,整合式、模組化的硬體設計,大大降低電子元件控制、使用上的技術問題,插槽經過設計,能夠很直觀的連接。整組套件有如積木般,需要哪些功能,直接找尋適當的model組合即可,不用擔心任何關於電路零件布局、雜訊處理、介面相容性等困擾,程式上更提供許多參考範例、SDK(Software Development Kit)。想要當Maker不需要埋首苦讀,學習一大堆公式理論。只要有創意,人人都可以做到!

  至於arduino和3D printer帶來哪些衝擊、對於電資領域學習造成哪些影響,又是另外可以討論的主題了!(可參見arduino在學習微電腦上所帶來的影響一文)



參考資料:

●【活 動】Maker Faire Taipei 2015:

http://www.huashan1914.com/exhibition/playing_detail.php?cate=exhibition&id=1468

●株式会社鳥人間:

http://www.tori.st/

●比傳統 3D 列印快上一百倍!這支團隊讓一堆專利變成廢紙-CLIP 技術:

http://buzzorange.com/techorange/2015/04/02/carbon3d-clip/

●Arduino\NXT 有害論:

http://web.ntnu.edu.tw/~60132057A/SubPage/AntiArduino.htm

●英特爾微處理器列表:

https://zh.wikipedia.org/wiki/%E8%8B%B1%E7%89%B9%E5%B0%94%E5%BE%AE%E5%A4%84%E7%90%86%E5%99%A8%E5%88%97%E8%A1%A8




2015.5.31初稿

2015年6月13日 星期六

教育學習類-2015學生計算機年會心得

  到中研院參加學生計算機年會(SITCON,Students’ Information Technology Conference),雖然台灣科技產業以硬體發展為主,以軟體為核心的公司不多;但在這次活動中,可以看到在這片土地上,依然有一群人,大多是學生,對於資訊軟體具有相當的熱情與投入。在一場場的演講中,談論互聯網的演進、機器學習及背後的演算法、在校園推動Open Data,Open Campus讓學生能夠參與校務系統開發,以及其他專題作品、有關電腦程式活動的經驗分享,是一個良好的交流平台。

  關於互聯網的演進(Evolution of The Internet),網路的發明可說是資訊傳遞的一大革新,從國防、學術到逐漸商業化的過程,未來將成為物聯網(IoT)。當資料不斷以指數形式增長,產生許多有趣的應用。討論校務系統,大多交由外包廠商開發、維護,但使用的人是學生與老師,只有從使用者的角度,才能發現系統操作上的不便。從選課、作業上傳繳交的流程,是否能有更大的改進呢?與其抱怨,不如實際行動!當我們想要改善系統的設計,學校是否願意提供資源(如API)呢?所謂API,即為應用程式介面;維基百科上定義為「軟體系統不同組成部分銜接的約定。」如果說UI是應用程式與user之間的橋樑,API就是程式與程式之間的橋樑。換句話說,程式需要從課程、圖書館藏等Database索取資料的管道,是經由API指令直接傳入輸入參數以獲得結果,與一般網頁介面上有textbox、button的UI不同。有適當的API,對於應用程式製作上有莫大的幫助。

  整個活動從起始到圓滿結束,除了滿滿的收穫,更看到工作人員的用心。洽詢廠商贊助、邀請講師、場地租借、美工動畫、音效燈光、用餐與交通接駁等等環節的籌劃、執行,都相當不易;深深令人敬佩與感謝。
2015.3.8初稿

類比振盪電路-NE555無穩態多諧振盪電路實驗



一、實驗目的:


  嘗試以IC555達成不穩態多諧振盪器(Astable Multivibrator)之實驗並觀測調整各項參數對振盪訊號頻率以及工作週期(Duty Cycle)等之影響。
二、實驗原理:



1 NE555無穩態振盪電路圖
1、根據Datasheet資料,555 IC內部三顆電阻皆為5kΩ,構成一分壓網路,產生1/3Vcc及2/3Vcc之比較電壓,內部電路如下圖:


2 NE555內部電路圖
2、由比較器特性可知:
  • 當第二腳低於1/3Vcc且第六腳低於2/3Vcc時,IC內部上比較器(Upper Comp.)輸出邏輯0,下比較器(Lower Comp.)輸出邏輯1SR正反器之S=1R=0Q(n+1)=1、Q(n+1)'=0,NPN電晶體截止(OFF),第三腳輸出Vo為高準位邏輯1
  • 當第二腳高於1/3Vcc且第六腳低於2/3Vcc時,IC內部上比較器(Upper Comp.)輸出邏輯0,下比較器(Lower Comp.)輸出邏輯0SR正反器之S=0R=0,Q(n+1)=Q(n)、Q(n+1)'=Q(n)',第三腳輸出Vo維持原態。
  • 當第二腳高於1/3Vcc且第六腳高於2/3Vcc時,IC內部上比較器(Upper Comp.)輸出邏輯1,下比較器(Lower Comp.)輸出邏輯0SR正反器之S=0R=1Q(n+1)=0Q(n+1)'=1NPN電晶體導通(ON),第三腳輸出Vo為低準位邏輯0
狀態整理如表1所示:


1 NE555無穩態電路工作狀態整理


3、電源啟動瞬間,電容端電壓Vc=0VC視為短路,接腳26輸入電壓為0V,此時IC內部SR正反器之S=1R=0,第三腳輸出Vo為高電位,Q(n+1)=1;同時Q(n+1)'=0,使得NPN電晶體截止(OFF),故電容C經由Ra和Rb開始充電。
4、當第二腳(即第六腳)電壓上升至1/3Vcc時,IC內部SR正反器之S=0R=0,Q(n+1)=Q(n),第三腳輸出Vo不變(維持之前準位),電容C持續充電。



教育學習類-IEEE International Congress on Big Data 2015心得

  談起大數據-這個近幾年來十分火紅的議題,似乎許多問題都能透過大數據解決。但面對新興的概念,我們應該先思考一些問題,有一定初步的認知之後,再進一步討論技術、應用的層面。

問題1:為何要Big Data?

  資訊網路科技興起,資料呈現指數性成長,曾經有人針對網路的資訊量進行估計,討論「把整個網路列印出來需要用多少張紙?」這類的問題,發現確實是海量資料。既然資料量如此龐大,分析需要強大的運算能力,甚至要找尋適當的處理平台、有效率的技術,是相當不容易的事,為何要Big Data?

  「美國有些人在處理巨量資料後,發現一些一般人難以置信卻又鐵證如山的推論,有時候也能驗證一些資料規模縮小就驗證不出來的現象。」重點在於找尋一些資料規模縮小就驗證不出來的現象。人們對未來總是好奇;從過去的占星、求神問卜,到商業、科學發展希望能預測潮流、趨勢都是如此。透過海量資料,我們可能看到市場的脈動,消費者、使用者偏好等等巨觀的現象,因此投入Big Data。

問題2:從Big Data能得知哪些訊息,有哪些好處?

Big Data重點在資料的來源與分析的方法,假設Data是百貨公司消費者購物的記錄,結果也大概跟百貨公司消費行為有關,可能可以得知淡旺季、得知經濟成長的概況等等。如果資料不夠完整,量不夠大,所看到的結果可能與事實有落差;或根本沒有資料,就完全談不上Big Data了。



參考資料:

把整個網路列印出來需要用多少張紙?:

http://technews.tw/2015/05/03/print-internet-paper/

大數據瞎掰症候群:

http://www.businesstoday.com.tw/article-content-99205-115527?page=1

教育學習類-林宏裕校友的啟示

  最近看了一本傳記,描寫北科大畢業校友、陽光電子儀器廠創辦人林宏裕的人生故事,他不僅是成功的企業家,對於人生的態度與理念更令人欽佩與感動。

  童年生活的貧窮與坎坷,除了念書,還得出外打工貼補家計;工專時期的他前往石粉工廠,專門處理矽酸鹽類的礦物,需要將礦物中的雜質,如氧化鐵,和碎石機磨損產生的鐵屑去除才能出售。當時相關的電磁分離設備所費不貲,他便自行以電磁鐵設計、製作。即使他當時沒有相當的經驗,依然根據所學的基本電學基礎加上努力自修來達成目標,同時涉獵電化學知識……。

  從這樣的故事中我們看到什麼?

  我們可以看到學以致用的積極態度,希望能利用在學校或自修所得的專業知識解決問題。「學以致用」是我相當喜歡的一句話,更是我不斷嘗試力行的原則。在人生中我們不斷學習、不斷成長,但學習的動機與目的、意義為何?恐怕能回答的人不多了。學習的「動機」應該出自於好奇心,而學習的「目的」應該在於學以致用。有了「動機」與「目的」,才能夠賦予一件事物的價值與意義。許多人的所學與工作上的需求難以契合,無法發揮其所長是相當可惜且遺憾的。

  了解學習的價值,才能有更強烈的動力,深入探索一個領域。在探索的過程中,可能遭遇困難、挫折,面對多樣、多變的問題。在資訊發達的現代,找尋問題的答案容易許多,透過網際網路的流通,世界各地的人隨時可以分享不同的經驗與資源。但也由於技術與科學的發展,有更多過去前所未見的情況,新的挑戰依然不斷產生。因此更需要培養「解決問題的方法」。問題的定義廣泛,可能是完成某項目標、達成某些需求。而方法可能是指我們已經具備的能力,或是我們未具備,但懂得透過進一步學習而獲得的能力。

2014.9.11初稿

新聞類-18歲以下用3C逾半小時 父母要罰

  當放任孩童持續使用3C產品逾半小時將違法,未來是否也該制定個法律,放任孩童飲食而導致肥胖也開罰呢?是否該制定個法律,為避免孩童受到二手菸的危害,養育小孩的家長全面禁止吸菸呢?

  台灣的法律逐漸演變得「瑣碎化」,少數人的始作俑者,真的有必要制定一套死板的規範,讓全民來遵守嗎?我相信部分的問題,應該可以由道德來解決;以孩童重度使用3C產品而言,罰款的行政處分過重,可以先行宣導改善,或是聯合衛教機構與科技業者,在孩童使用模式下限制使用時間,或是當孩童發生近視徵兆時,由醫師與家長共同協調孩童使用3C產品之時間安排即可;否則未來親子在家共同觀賞電影,是否也有犯法疑慮呢?實在沒有必要制定這樣的法律嘛!

新聞網址:
https://tw.news.yahoo.com/18%E6%AD%B2%E4%BB%A5%E4%B8%8B%E7%94%A83c%E9%80%BE%E5%8D%8A%E5%B0%8F%E6%99%82-%E7%88%B6%E6%AF%8D%E8%A6%81%E7%BD%B0-221615083.html

教育學習類-教育需要帶給學生什麼樣的思維?

關於「教育需要帶給學生什麼樣的思維?」

第一:知道為什麼要學習。

  從小時候,每個人總有一定的好奇心,想認識一切事務。因此,我們透過閱讀、發問、觀察學習常識知識。遭遇問題,學習解決的技巧,以克服困難。但逐漸成長,台灣教育以強行填鴨式抹煞學習樂趣;又注重成效,不斷藉考試制度檢驗,希望能立竿見影;當應付測驗成為學習目標,補習文化盛行,失去目的,同時缺乏方向的盲從,一味順從外在的安排,囫圇吞棗。許多人認為學生大多缺乏想法與見解。針對開放性的問題,建立屬於自己的立場與觀點,並適當地進行表達是相當重要的。但這項能力在高中、國中小教育中普遍未受到重視,反而受到壓抑,曾經試圖提出自己的疑問時,大多老師皆以「這不會考」為由,難以深入探討!考試引導教學,大家看的是成績表面上的數字,有人說「數字會說話」,但數字到底說了些什麼?能夠培養出思考力,培養出表達力嗎?還是只是訓練出一群只會記憶一連串死板知識、人云亦云的人呢?只有先知道為什麼要學習,才能以正確的態度與方法學習。

第二:獨立思考。

  面對事件、現象、定律、公式,除了知其然,更要知其所以然。教科書上固然會提及起因與緣故,但我們是否質疑過呢?古人曰:盡信書,不如無書。獨立思考是一項檢驗的工具,從框架外的角度檢視,提出新的假設及推論,才有創新與突破的機會。

第三:勇於找尋新方法解決問題。

  教科書上的內容是有限的,永遠有前所未見的問題。具備獨立思考技能,從嘗試中進步,才是最佳的解決方法。

教育學習類-2015北科大創新創業工作坊心得

  參加北科大舉辦的8th全國大專盃創業競賽,今天的工作坊研習又帶來創新的思維與滿滿的收穫。
  早上的第一場演講帶給我相當高的興致,由葛如鈞講師談「從奇點看創新與未來」。「奇點」透露講師的特殊經歷,曾經前往美國「奇點大學」(Singularity University),一間由google、NASA及各大科技公司於2009年所創立,討論許多創新想法的夢想實踐中心,包含能夠上太空無重力環境下運作的3D列印機、能夠從紐約快速飛行至東京的航空運輸機……很多與眾不同的點子。
  從一張張簡報投影片中,我們看到世界快速的轉變:以摩爾定律為車頭的列車、機械自動化、網際網路高度連結、人工智慧研究……許多都是近代環境快速變遷的結果。摩爾定律約在1960年代,由Intel工程師提出,從一開始描述半導體元件技術的突飛猛進,單位面積電晶體數量每18個月將增加一倍,價格減半,延伸出資訊爆炸性流通的局面,世界發展呈指數性成長,唯一的限制就是想像力了,讓思考要有指數型的成長,才有機會跟上時代的變化。



教育學習類-2014台北國際發明暨技術交易展參觀心得

  這是我第二次參觀台北國際發明暨技術交易展;去年第一次參觀時,發現有許多發明與新興技術,不論學校、研究機構或業界皆有參展。展覽的主要目的,是希望媒合技術與需求,降低產學落差,並提供技術轉移交流的平台。臺灣整體科技發展的主導單位是行政院國科會,也就是現在的科技部,研究機構為國家實驗研究院,包含十一個研究中心。從現場的介紹資料中,發現國家高速網路與計算中心曾經研發過超級電腦「FORMOSA福爾摩沙」,這部超級電腦還曾登上世界五百大排行榜。簡單的說,超級電腦就是依靠數百、數千的CPU,進行平行運算,以分析或模擬的方式嘗試解決問題。很好奇的詢問現場服務於國網中心的人員,關於台灣下一代超級電腦的發展;得到了帶有些許遺憾的回答,說設備主要是由廠商提供,還屬於研討階段。而台灣一直處於代工的地位,究其主因,大陸則挹注大量(相對於台灣)資源在科研領域,台灣在資源有限的情況下,力求發展重點產業。但什麼是重點呢?

2015年6月6日 星期六

教育學習類-2015微軟實習分享會心得

  今天前往市政府附近,參與「微軟未來生活體驗計畫」分享會;來自全國南北各大學青年學生齊聚一堂,除了聆聽學長姐經驗分享,也對於微軟公司行政、行銷的相關工作有更多認識。

  在整個Intern Game中,每年提供約100個實習名額,篩選條件「三不」:不限學校、不分科系、不問成績,職位分為AA、MAA、SAA及RDAA四大角色。AA為行政助理,負責資料彙整處理分析、文案發想與撰寫、業務資訊整合管理;MAA為行銷助理,負責社群行銷企劃執行、市場數據分析;SAA為協銷助理,負責活動規畫企劃執行;RDAA為RD技術助理,負責企業程式開發與模擬、開發軟體測試、客戶專案維護與執行和雲端技術。

  演講剛開始,由微軟經理Grace Ma開場致詞,接著是曾加入第六屆微軟生涯體驗計畫的田芝寧學姊談通路行銷、業務、Marketing、Sales,也討論企業對新鮮人所要求的能力:表達力、學習力、耐力,鼓勵初入職場時多請教主管同事,更要擬定未來目標。

  從四大角色中,十分明顯的AA、MAA與SAA屬於管理、商業行銷方面;不論哪個領域,皆具有其專業知識。從工程背景的角度,我比較關注的是RDAA的部分。一開始就對於RDAA相當好奇,既然是著名軟體外商公司的研發部門,應該有比較多編寫程式的機會,類似於作業系統設計、研究程序平行處理、記憶體管理技術、編譯器開發……等等。但在會議結束後,得到的結論是:RDAA業務主要偏向手機APP客製化、客戶端技術顧問、網頁設計、軟體操作介紹影片之製作;較少深入且大型的專案。

  當微軟提出「三不」:不限學校、不分科系、不問成績時,乍看之下使得人人有機會;但提及實際工作情形,AA包含買咖啡、訂便當與下午茶、送文件、文書工作、接聽電話、跑腿;MAA進行物料倉管、拍片剪片、操作Photoshop、更新網站平台、問卷整理、文件翻譯;SAA進入資訊展駐點主持,上市記者會產品介紹……。雖能夠親身體驗企業文化,但難以發揮專精才能,令我有些失望!若所學無法致用,面對問題便缺乏解決的自信;基本上問題可大致歸為三類:第一類為「能完全掌握解決方案的問題」,能夠輕鬆處理。第二類為「需查詢參考資料,但可有效解決的問題」,清楚從何處尋找解決方案並順利處理。第三類為「需查詢參考資料,但不一定能解決的問題」!當實現學以致用,大多數的問題將回到第一類,更凸顯所學價值。

  可見微軟雖在台灣開設分公司,更提供學生大量接觸業界的機會,其目的為「銷售產品、提供服務」;核心研發主力關鍵依然位於美國。相較於硬體而言,台灣軟體在全世界的實力和競爭力真是令人擔憂呀!

2015.2.1初稿

2015.2.3增修1

課程類-大一上高階語言程式實習心得

  談到程式設計,許多人注重語法與編寫格式。一學期的課程結束了,介紹了基本的程式概念,從基本的變數宣告、條件判斷式、重複執行的迴圈、結構化副程式,到遞迴、陣列、指標與檔案讀寫的進階技巧。內容豐富,更提供不少習題,有大量的練習機會。但依然有些部分較為缺乏:

1.          思考程式的處理方式與步驟

  上課中講解範例,自問題、程式碼到執行結果都一覽無遺,如此確實能夠增進語法的熟悉,但還有更重要的,是「如何處理輸入資訊」,才能解決問題。課堂中缺少思考的過程,不應該直接公布程式答案,將思維局限於框架中。是否應該讓同樣的問題,鼓勵每個人創造不同的方式解決,殊途同歸也更靈活呢?

2.          輸入範圍的設定與測試資料的完備性

  不論是例題或課後作業,總是缺少「輸入」範圍。在生活中,飛機有設定運輸載客量,電梯有設定最大乘載人數,電器有設定額定輸入電壓範圍。在程式設計中,考量輸入狀態相當重要,給定正常範圍是必要條件。以下列程式為例:

請輸入a、b兩數字,輸出為a*b

這乍看之下是個完整的題目,但實際上,要求

-1000<a<1000;

-1000<b<1000;

-1000000<a*b<1000000



-100000000000<a<100000000000;

- 100000000000<b<100000000000;

-1000000000000000<a*b<1000000000000000

或要求a與b皆為小數,a*b需計算至小數點後10位

有極大不同。當輸入範圍愈大、愈廣,考慮因素便愈複雜。

  另外,應提供數筆測試資料,以供檢驗程式正確性;當題目狀態多元時,經由比對測試資料及程式輸出,可驗證設計可行性。讓我們來看看網站「高中生程式解題系統」 中的一個題目-因數分解:
----------------------------------------------------------------------------------------
內容 :
各位在國小時都學過因數分解,都瞭解怎麼樣用紙筆計算出結果,現在由你來敎電腦做因數分解。
因數分解就是把一個數字,切分為數個質數的乘積,如 12=2^2 * 3
其中, 次方的符號以 ^ 來表示
輸入說明 : 
一個整數, 大於1 且 小於等於 1000000
輸出說明 : 
一個字串
範例輸入 :  
20
17
999997
範例輸出 :
2^2 * 5
17
757 * 1321
----------------------------------------------------------------------------------------

輸入說明、輸出說明、範例輸入、範例輸出是不是很清楚呢?

3.          評估執行時間、記憶體用量

  為了比較程式的性能,除了結果正確;更應該以執行時間愈短、記憶體用量愈小為目標,提升軟體效能。

2015年2月11日 星期三

新聞類-年薪千萬叛將 揭台積電慘輸三星真相

  一人的去留,能左右兩國半導體業的消長......

  半導體產業發源於歐美;台灣大約於三十年前,成立國科會、科學工業園區,傾國家之力發展高科技,半導體、光電、電腦資通業蓬勃發展;直至今日,台積電成為全球晶圓產能前十大廠商之一、聯發科也名列世界前十大微處理器廠商,這些成就使台灣成為名符其實的科技島;但市場競爭更加激烈,韓國三星竄起,其業務跨足記憶體產業、行動裝置、顯示面板多項領域,在製程上可謂台積電頭號對手,如今累積20多年、以數千億台幣研發經費打造的技術優勢,已在一夕之間被抹平了。中國也正蓄勢待發,大量投入元件製造。面對未來,台灣還能創造出哪些籌碼以面對嚴峻的市場考驗,有待觀察。



關於半導體發展的書籍:

李雅明(2013.12),半導體的故事,新北市新店區德正街27巷28號,暖暖書屋文化事業股份有限公司

博客來-半導體的故事:發展與現況



新聞來源:

https://tw.news.yahoo.com/%E5%B9%B4%E8%96%AA%E5%8D%83%E8%90%AC%E5%8F%9B%E5%B0%87-%E6%8F%AD%E5%8F%B0%E7%A9%8D%E9%9B%BB%E6%85%98%E8%BC%B8%E4%B8%89%E6%98%9F%E7%9C%9F%E7%9B%B8-082326743.html

新聞類-立委大人,別管什麼8G,我們來談談 5G就好!

  請問立委大大,科技發展是在拍賣市場競標喊價嗎?說8G就8G,說10G就10G嗎?

  在科技發展的過程中,其技術層面有許多標準、規格;不僅僅侷限於通信領域,從軟體到硬體皆如此。以硬體而言,常見的USB介面就包含複雜的傳輸格式,最初由英特爾與微軟發起,目的為建立通用串列型外部IO;軟體方面,常見的Microsoft文件檔格式:.doc,檔案儲存格式同樣複雜;其規範是微軟內部制定,若沒有取得檔案儲存格式規範說明書(當然這有專利),我們大概也難以自行設計程式讀取Microsoft Word文件檔。

  在國際上幾乎所有通訊方式、協定,皆由ITU(International Telecommunication Union,國際電信聯盟)所制定,3G網路命名為IMT-2000規範,4G網路為IMT-Advanced規範,韓國的5G才處於研發階段,ITU根本尚未定出官方規範,何來8G?

維基百科參考資料:

4G:https://zh.wikipedia.org/wiki/4G

ITU:https://zh.wikipedia.org/wiki/ITU

新聞來源:

http://www.ettoday.net/news/20141002/408823.htm

課程類-大一上大學入門與工程倫理心得

  這學期的大學入門課程接近尾聲了,回顧每次星期五早上大約兩個小時的課程中,主題相當豐富多元;學期初的拜師禮、介紹各院系,談情緒、認知與決策,學習與自我管理,探究學習的目的。大學非國民教育,讀大學並不是義務;既然是做非義務的事,總有動機與目的;但大多數的人的回答是「不知道」、「沒想過」。因此許多人認為學生大多缺乏想法與見解。面對開放性的問題,建立屬於自己的立場與觀點,並適當地進行表達是相當重要的。但這項能力在高中、國中小教育中普遍未受到重視,補習補不出來!大家看的是成績表面上的數字,有人說「數字會說話」,但數字到底說了些什麼?能夠培養出思考力,培養出表達力嗎?還是只是訓練出一群只會記憶一連串死板知識、人云亦云的人呢?

    人云亦云是乍看之下很有目標,但論及追求的目的,只是隨著其他多數人的選擇罷了。當我們開始自行追尋這些問題的根本答案之初,或許會迷惘;關於思考人生規劃該如何開展,在「勇敢做自己的圓夢大使」演講中,演講者徐培剛說:「興趣不能當飯吃,除非將興趣轉化為技能。」考慮實際層面,的確「技能」才能創造出具體價值。但「興趣」則是驅使技能成長的最好、最強大動力源。當我們不斷觀察,真正在一個領域有所成就的人,必定是對那個領域有熱忱的人。若缺乏興趣及熱情,技能便難以精益求精,面對重重的困難也難以堅持了。

  接著談論大學生該做的事,從專業知識、外語能力、拓展人脈、增進視野都可包含在內,但除了不斷增加履歷的同時,我們是否只是在「洗履歷」呢?當瀏覽網站(https://www.thenewslens.com/post/113787/?utm_source=htc)後,我開始檢討:除了表面上條列滿滿的事蹟、證明之外,履歷的深度該如何定義呢?從履歷中,能看出我們是「有想法、準備好的人」嗎?

引用網站中列出的條件:

1.      你是否曾經回饋栽培自己的組織,為它創造貢獻?

2.      在你多元的生活經驗中,有什麼樣的能力是不斷展現且精進的?

3.      你是否不只是「使用」別人創造的資源,更能在沒有資源的情況下創造資源?

4.      你每一段生命經驗給自己帶來了什麼重要的價值,而彼此之間是否有邏輯關連?

5.      你的履歷是否有造假或誇大的可能?網路上是否找得到其他佐證你經驗的資料?

增加履歷的內容以外,更要提升履歷的深度、凝聚履歷的核心價值。

心得想法目錄

(按日期排列)
課程類:



新聞類:





教育學習類: