網站更新隱私權聲明
本網站使用 cookie 及其他相關技術分析以確保使用者獲得最佳體驗,通過我們的網站,您確認並同意本網站的隱私權政策更新,了解最新隱私權政策

0

0
0

文字

分享

0
0
0

仿生機器人──小怪獸(升級篇)

馥林文化_96
・2012/05/10 ・2438字 ・閱讀時間約 5 分鐘 ・SR值 505 ・六年級

去探索吧小怪獸!

文/鮑惟聖

加裝LED與紅外線感測器

現在「小怪獸」已經可以靈活的動作了,來一段有趣的舞蹈也是不難事。前面有提到我們想替「小怪獸」裝二個LED與紅外線感測器(圖A),讓它看起來更酷更聰明,現在就繼續努力吧!

圖A

首先介紹元件工作原理,大家可以對照之前SC8接線安裝圖。LED有二隻腳,長腳為正極,短腳為負極。長腳串接一個220歐姆的 電阻到5V,電阻的色碼為紅紅棕。LED的短腳再分別接到數位輸入輸出腳P0與P6。P0與P6的選擇是為了方便LED安裝在左右兩邊,沒有其他考量。再 來就是安裝紅外線發射器。這裡所使用到的就是一個紅外線LED,顧名思義,它也是一個LED。只不過發射出來的是不可見的紅外線,所以對LED的描述也適 用。這裡我們把它接到P2。紅外線接收器是一個三隻腳的元件,我這裡使用的編號為FM-9038LM-5AN。分別為正、負電源以及輸出腳。正、負電源就 分別接到5V以及GND,輸出腳則接到P4腳。紅外線LED與紅外線接收器同樣面向前方,但是紅外線會從LED側面散出,而被紅外線接收器收到,造成誤認 前方有障礙物。為避免紅外線散出,這裏使用了膠套將紅外線LED包起來,僅允許從前方發射紅外線出去。各位手邊沒有適用的膠套,則可以使用黑色電工膠帶將 LED纏繞,僅留前方開口即可。目前使用到的P0、P2、P6都是做輸出使用,只有p4是做輸入使用。(圖A)為了方便辨識,特別將須接到5V的線路選用 紅色線材,須接到GND的線路選用黑色線材,須接到各I/O接腳的線路選用黃色線材。實際接線時要注意避免金屬部分碰觸造成短路,所以電工膠帶或是塑膠套 管都是需要的。

雖然線路是相同的,但每一個人實際的接線看起來都會不太一樣,美醜就看每個人的藝術細胞有多少啦。我給每隻腳套上紅色的熱縮套管,再加熱使其收縮而不會掉落,穿上四隻小紅鞋看起來還很有造型,而且還有防滑的功效呢,希望對我的藝術細胞有加分作用,完成品請看(圖B)。

圖B

「小怪獸探索」的程式

現在開始要把感測器的輸入與動作結合,前面的程式只是練習題,現在才是正式開始撰寫「小怪獸探索」程式。這裡先介紹一下「小怪獸」的行為模式。開啟電源後「小怪獸」會先點亮LED雙眼,維持標準站姿五秒。接著做兩個「伏地挺身」暖身一下準備出發。

「小 怪獸」會隨時測量前方是否有障礙物,LED雙眼也保持每秒明滅一次的速度眨眼。一旦發現障礙物則停止前進,然後原地左轉,再次測量前方是否有障礙物,這段 期間LED雙眼以兩倍的速度明滅,讓它看起來很焦慮的樣子。如果前方依舊測量到有障礙物,則持續作左轉測量的動作,直到障礙物消失,然後繼續前進,LED 雙眼也恢復每秒明滅一次的眨眼速度。這裡的障礙物偵測距離大概是30公分,調整偵測距離的方法以後有機會再來介紹。

以下就是程式原始碼,後面有註解說明。此程式只使用到幾個副程序,提高程式閱讀性,方便入門者了解程式控制之原理。等到熟悉相關程式技巧後,可以嘗試更結構化的程式架構,以減少程式行數、提高執行效率,增加程式維護、修改的彈性。

‘—————————————————

‘ 小怪獸探索程式

‘—————————————————

Peripheral mySer As ServoRunner8A @ 0 ‘ 預設內建模組ID為0

Sub OpenEyes()

Low 0 ‘ 點亮左眼LED

Low 6 ‘ 點亮右眼LED

End Sub

Sub CloseEyes()

High 0 ‘ 熄滅左眼LED

High 6 ‘ 熄滅右眼LED

End Sub

Sub RunFrame(ID As Byte)

Myser.LoadFrame(ID) ‘ 載入編號ID的動作

Myser.Runallservo() ‘ 執行載入的動作

Pause 150 ‘ 等待伺服機完成動作(每秒4步)

End Sub

Sub Main()

Dim IR As Byte ‘ 宣告變數

‘—————————————————

‘ 點亮左右眼LED以及初始立正姿勢

‘—————————————————

OpenEyes() ‘ 點亮雙眼LED

RunFrame(0) ‘ 呼叫程序執行編號0動作

Pause 5000 ‘ 等待5秒才開始動作

‘—————————————————

‘ 伏地挺身二次

‘—————————————————

RunFrame(1) ‘ 呼叫程序執行編號1動作

RunFrame(0) ‘ 呼叫程序執行編號0動作

RunFrame(1) ‘ 呼叫程序執行編號1動作

RunFrame(0) ‘ 呼叫程序執行編號0動作

Pause 2000 ‘ 等待2秒才開始出發

‘—————————————————

‘ 程式主循環

‘—————————————————

Do

Sound(2, 5, 38400) ‘ 從第2腳發射5微秒的38.4kHz紅外線載波

IR = In(4) ‘ 從第4腳讀取紅外線載波資料

If IR = 0 Then ‘ 發現障礙物向左轉,左前足起步左轉: [4,6,2,7]

RunFrame(4) ‘ 呼叫程序執行編號4動作

CloseEyes()

RunFrame(6) ‘ 呼叫程序執行編號6動作

OpenEyes()

RunFrame(2) ‘ 呼叫程序執行編號2動作

CloseEyes()

RunFrame(7) ‘ 呼叫程序執行編號7動作

OpenEyes()

Else ‘ 未發現障礙物,右前足起步前行 [2,5,4,3]

RunFrame(2) ‘ 呼叫程序執行編號2動作

RunFrame(5) ‘ 呼叫程序執行編號5動作

CloseEyes()

RunFrame(4) ‘ 呼叫程序執行編號4動作

RunFrame(3) ‘ 呼叫程序執行編號3動作

OpenEyes()

End If

Loop

End Sub

程式輸入完畢之後,請在「建立」選單中選取「建立」功能進行程式編譯,並通過USB線下載編譯後的程式碼至SC8控制板。此時「小怪獸」不再只是會做「伏地 挺身」而已。這樣的程式流程已經讓「小怪獸」具有從迷宮脫困的基本能力。大家完成程式之後,可以嘗試定義一下更複雜的流程。原則上更複雜的流程可以讓「小 怪獸」以更聰明的方法從迷宮中脫困。或者加上更多的感測器,讓「小怪獸」可以更快速地感測周邊環境,做出更有效率的決策。這時候大家就來辦個「走迷宮競 賽」,誰的「小怪獸」厲害,高下立判。

文章接近尾聲了,當我把功能驗證完畢之後,心情剎時輕鬆了起來。拿幾個紙盒當成路障,把書房的燈給轉 暗,再啟動我的「小怪獸」。閃爍的LED光影、「嘎嘎」的伺服機轉動聲、踽踽獨行的身影,我彷彿看到「小怪獸」在火星上獨自探索。We are programmed to explore! 這就是機器人DIY的樂趣。當我神遊在自己的異想世界裡,「小怪獸」已經從紙盒做的「八卦陣」裡走了出來,我彷彿聽到「小怪獸」在說:What’s next?

*鮑惟聖
擁有中原大學電機工程學士學位,利基應用科技(www.innovati.com.tw)的創辦人。多年來一直從事微處理器應用與系統工具的開發,並致力於推廣智慧型機器人科普教育。

更多:
仿生機器人──小怪獸(製作篇)
仿生機器人──小怪獸(運用篇)

本文原發表於《Make》國際中文版vol.03

文章難易度
馥林文化_96
54 篇文章 ・ 6 位粉絲
馥林文化是由泰電電業股份有限公司於2002年成立的出版部門,有鑒於21世紀將是數位、科技、人文融合互動的世代,馥林亦出版科技機械類雜誌及相關書籍。馥林文化出版書籍http://www.fullon.com.tw/


0

9
3

文字

分享

0
9
3

揭開人體的基因密碼!——「基因定序」是實現精準醫療的關鍵工具

科技魅癮_96
・2021/11/16 ・1998字 ・閱讀時間約 4 分鐘

為什麼有些人吃不胖,有些人沒抽菸卻得肺癌,有些人只是吃個感冒藥就全身皮膚紅腫發癢?這一切都跟我們的基因有關!無論是想探究生命的起源、物種間的差異,乃至於罹患疾病、用藥的風險,都必須從了解基因密碼著手,而揭開基因密碼的關鍵工具就是「基因定序」技術。

揭開基因密碼的關鍵工具就是「基因定序」技術。圖/科技魅癮提供

基因定序對人類生命健康的意義

在歷史上,DNA 解碼從 1953 年的華生(James Watson)與克里克(Francis Crick)兩位科學家確立 DNA 的雙螺旋結構,闡述 DNA 是以 4 個鹼基(A、T、C、G)的配對方式來傳遞遺傳訊息,並逐步發展出許多新的研究工具;1990 年,美國政府推動人類基因體計畫,接著英國、日本、法國、德國、中國、印度等陸續加入,到了 2003 年,人體基因體密碼全數解碼完成,不僅是人類探索生命的重大里程碑,也成為推動醫學、生命科學領域大躍進的關鍵。原本這項計畫預計在 2005 年才能完成,卻因為基因定序技術的突飛猛進,使得科學家得以提前完成這項壯舉。

提到基因定序技術的發展,早期科學家只能測量 DNA 跟 RNA 的結構單位,但無法排序;直到 1977 年,科學家桑格(Frederick Sanger)發明了第一代的基因定序技術,以生物化學的方式,讓 DNA 形成不同長度的片段,以判讀測量物的基因序列,成為日後定序技術的基礎。為了因應更快速、資料量更大的基因定序需求,出現了次世代定序技術(NGS),將 DNA 打成碎片,並擴增碎片到可偵測的濃度,再透過電腦大量讀取資料並拼裝序列。不僅更快速,且成本更低,讓科學家得以在短時間內讀取數百萬個鹼基對,解碼許多物種的基因序列、追蹤病毒的變化行蹤,也能用於疾病的檢測、預防及個人化醫療等等。

在疾病檢測方面,儘管目前 NGS 並不能找出全部遺傳性疾病的原因,但對於改善個體健康仍有積極的意義,例如:若透過基因檢測,得知將來罹患糖尿病機率比別人高,就可以透過健康諮詢,改變飲食習慣、生活型態等,降低發病機率。又如癌症基因檢測,可分為遺傳性的癌症檢測及癌症組織檢測:前者可偵測是否有單一基因的變異,導致罹癌風險增加;後者則針對是否有藥物易感性的基因變異,做為臨床用藥的參考,也是目前精準醫療的重要應用項目之一。再者,基因檢測後續的生物資訊分析,包含基因序列的註解、變異位點的篩選及人工智慧評估變異點與疾病之間的關聯性等,對臨床醫療工作都有極大的助益。

基因定序有助於精準醫療的實現。圖/科技魅癮提供

建立屬於臺灣華人的基因庫

每個人的基因背景都不同,而不同族群之間更存在著基因差異,使得歐美國家基因庫的資料,幾乎不能直接應用於亞洲人身上,這也是我國自 2012 年發起「臺灣人體生物資料庫」(Taiwan biobank),希望建立臺灣人乃至亞洲人的基因資料庫的主因。而 2018 年起,中央研究院與全臺各大醫院共同發起的「臺灣精準醫療計畫」(TPMI),希望建立臺灣華人專屬的基因數據庫,促進臺灣民眾常見疾病的研究,並開發專屬華人的基因型鑑定晶片,促進我國精準醫療及生醫產業的發展。

目前招募了 20 萬名臺灣人,這些民眾在入組時沒有被診斷為癌症患者,超過 99% 是來自中國不同省分的漢族移民人口,其中少數是臺灣原住民。這是東亞血統個體最大且可公開獲得的遺傳數據庫,其中,漢族的全部遺傳變異中,有 21.2% 的人攜帶遺傳疾病的隱性基因;3.1% 的人有癌症易感基因,比一般人罹癌風險更高;87.3% 的人有藥物過敏的基因標誌。這些訊息對臨床診斷與治療都相當具實用性,例如:若患者具有某些藥物不良反應的特殊基因型,醫生在開藥時就能使用替代藥物,避免病人服藥後產生嚴重的不良反應。

基因時代大挑戰:個資保護與遺傳諮詢

雖然高科技與大數據分析的應用在生醫領域相當熱門,但有醫師對於研究結果能否運用在臨床上,存在著道德倫理的考量,例如:研究用途的資料是否能放在病歷中?個人資料是否受到法規保護?而且技術上各醫院之間的資料如何串流?這些都需要資通訊科技(ICT)產業的協助,而醫師本身相關知識的訓練也需與時俱進。對醫院端而言,建議患者做基因檢測是因為出現症狀,希望找到原因,但是如何解釋以及病歷上如何註解,則是另一項重要議題。

從人性觀點來看,在技術更迭演進的同時,對於受測者及其家人的心理支持及社會資源是否相應產生?回到了解病因的初衷,在知道自己體內可能有遺傳疾病的基因變異時,家庭成員之間的情感衝擊如何解決、是否有對應的治療方式等,都是值得深思的議題,也是目前遺傳諮詢門診中會詳細解說的部分。科技的初衷是為了讓人類的生活變得更好,因此,基因檢測如何搭配專業的遺傳諮詢系統,以及法規如何在科學發展與個資保護之間取得平衡,將是下一個基因時代的挑戰。

更多內容,請見「科技魅癮」:https://charmingscitech.pse.is/3q66cw

文章難易度
科技魅癮_96
1 篇文章 ・ 2 位粉絲
《科技魅癮》的前身為1973年初登場的《科學發展》月刊,每期都精選1個國際關注的科技議題,邀請1位國內資深學者擔任客座編輯,並訪談多位來自相關領域的科研菁英,探討該領域在臺灣及全球的研發現況及未來發展,盼可藉此增進國內研發能量。 擋不住的魅力,戒不了的讀癮,盡在《科技魅癮》