前言

本文是上一篇臺灣選拔賽紀錄的後續。我們的智能電梯在臺灣選拔賽獲得金牌後,取得代表臺灣參加日本 IEYI 世界賽的資格。作品英文名稱為 Intelligent Elevator Traffic Management System,目標是在擁擠情境下提升電梯運行效率,並設置緊急按鈕以因應緊急狀況。

同組的張靖杭學長也寫了一篇大阪決賽紀錄。本文著重於我負責的影像辨識建模、車廂模型重製,以及第一次代表臺灣出國比賽的經驗。

大阪世界博覽會會場前的萬國旗
大阪世界博覽會會場前的萬國旗

重新規劃作品

確定參加世界賽後,我們做的第一個決定是重新規劃作品。

臺灣選拔賽的作品尚未完整。當時樹莓派必須同時控制馬達並接收樓層請求,馬達每移動一段便暫停判斷,使運行不夠連續,因此現場主要以我撰寫的模擬系統呈現邏輯。進入世界賽準備後,我們先重新規劃控制流程,使其更接近真實電梯的運作方式。

另一項限制來自行李重量。臺灣選拔賽的三層樓模型體積大、重量高且結構不夠穩定,不適合攜帶出國。我們因此暫停原本的模型設計並重新規劃,改以單一電梯車廂作為測試平台,搭配空間辨識模組與可實際運行的控制裝置。

將初賽的模擬裝置拆解,準備轉移
將初賽的模擬裝置拆解,準備轉移

可攜式車廂模型

車廂模型是我這次主要負責的部分,也是被行李這件事逼著改最多次的地方。

一開始要決定材料。臺灣賽時外殼是用雷射切割的木板,好看是好看,可是重量壓不下來。這次我改用 3D 列印來做,一方面是為了減輕重量,另一方面是列印的結構比較好拆,要即時維修也方便。我在暑假就用 3D 列印機把模組跟測試平台一版一版印出來,中間為了尺寸跟重量重新設計了好幾次。

地上鋪滿紙箱,在做車廂模型的表面處理
地上鋪滿紙箱,在做車廂模型的表面處理

我還特別把整個構造設計得簡單一點,原因很實際。東西越簡單就越好塞進行李,壞了也越好修。最後我把車廂模型拆成三等份來攜帶,到了現場再組回去,這樣才塞得進行李也扛得動。

3D 列印出來的車廂,紅色外框加上裡面的辨識模組
3D 列印出來的車廂,紅色外框加上裡面的辨識模組

影像辨識建模:改用 OpenCV 的 MOG2

辨識的部分延續了初賽的方向,不去數人頭,而是直接判斷空間被佔掉多少。這次我用 OpenCV 的 MOG2 演算法來做背景相減,讓模組能比較穩定地分辨電梯艙到底擠不擠。

模組本身就是一顆朝下的 Web-Cam,整合進 3D 列印的外殼裡,程式主要跑在筆電上。比起初賽那個臨時趕出來的版本,這次的辨識模組完整很多,也真的裝得上去用。至於狀態要怎麼顯示在電梯上,是另一段讓我頭很痛的故事,等一下再講。

這次辨識用的相機模組,一顆朝下的 Web-Cam
這次辨識用的相機模組,一顆朝下的 Web-Cam
在房間裡調辨識程式,螢幕上就是即時的畫面判斷
在房間裡調辨識程式,螢幕上就是即時的畫面判斷

樓層與狀態顯示螢幕

到了世界賽這個版本,我還想幫電梯加一塊螢幕。我參考的是日本電梯的樓層顯示畫面,就像下面這支影片那樣,彩色的電子顯示屏會秀出目前樓層還有運行狀態,也會搭配語音廣播,看起來又清楚又專業。我很希望我們的車廂也能做到這種效果,把目前樓層跟擁擠狀態直接顯示出來。

於是我找了一塊 TFT LCD 來做這件事。結果這塊螢幕比我想像中難搞非常多。從接線腳位到驅動程式,我幾乎每一步都卡關,光是要讓它正確亮起來,把畫面穩定地刷出來,就花掉我大把時間。中間換了不同的接法跟函式庫,也反覆除錯到很晚。

我想做的就是像日本電梯那樣,能顯示樓層跟狀態的彩色螢幕
我想做的就是像日本電梯那樣,能顯示樓層跟狀態的彩色螢幕
翻到背面看腳位,這塊 TFT LCD 讓我卡了超久
翻到背面看腳位,這塊 TFT LCD 讓我卡了超久

那段時間常常是我一個人在房間裡跟這塊螢幕耗,桌上那隻恐龍就這樣陪我熬夜除錯。雖然最後這塊螢幕沒能做到我一開始想的那麼完整,但光是把它從完全不會動弄到能顯示,就讓我學到很多關於硬體驅動的東西。

深夜還在跟 TFT LCD 奮戰,桌上的恐龍是我的精神支柱
深夜還在跟 TFT LCD 奮戰,桌上的恐龍是我的精神支柱

在實際電梯中測試

初賽時我們只能在桌上拿紙箱模擬電梯艙,這次我們決定玩真的,直接把辨識模組帶到學校的電梯裡測試,記錄它在真實電梯裡的運作效果還有數據。

把辨識模組裝上校內電梯的天花板,鏡頭朝下對著地板
把辨識模組裝上校內電梯的天花板,鏡頭朝下對著地板

在真實電梯裡測試跟在桌上完全是兩回事。光線,反光還有電梯艙的材質都會影響辨識結果,我們也因此蒐集到很多桌上測不出來的數據。我們甚至找了一群人一起擠進電梯,測模組在真的很擠的時候判斷準不準。

找一群人一起擠進電梯,測試擁擠情境下的辨識
找一群人一起擠進電梯,測試擁擠情境下的辨識

出發前的準備

出發去日本的前一天,我其實剛結束 AIS3 2025 的資安課程。等於前一天還在寫資安,隔天就要飛去比發明展,那幾天的行程排得非常滿。

AIS3 結束後的天空。結束那一刻其實還沒什麼實感,隔天就要出國了
AIS3 結束後的天空。結束那一刻其實還沒什麼實感,隔天就要出國了

這次因為要帶車廂模型,辨識模組還有一堆工具,我扛的行李比以往任何一次出國都多。除了自己的行李箱,還多了裝作品跟工具的箱子,光是打包就打包了好久。

這次帶的行李跟工具,比以前任何一次出國都多
這次帶的行李跟工具,比以前任何一次出國都多
準備搭乘接駁巴士前往會場,心情很複雜,既緊張又期待
準備搭乘接駁巴士前往會場,心情很複雜,既緊張又期待

抵達大阪世界博覽會

老實說,在飛機落地之前我都還有點不真實的感覺。以前出國都是旅遊,這是我第一次因為比賽出國,而且地點還是正在辦世界博覽會的大阪。

抵達大阪萬博會場,見到了傳說中的大屋根
抵達大阪萬博會場,見到了傳說中的大屋根

穿上 Creativity Taiwan 的隊服走進會場,看到來自各個國家的隊伍,那種我真的代表臺灣站在這裡的感覺很強烈,也讓我更緊張了一點。

穿著臺灣代表隊的隊服在會場,旁邊就是各國的攤位
穿著臺灣代表隊的隊服在會場,旁邊就是各國的攤位

布展與設備準備

我們 8 月 5 號抵達大阪,先到大阪世界博覽會的會場布展。布置完現場演練了一次,還算順利,設備都正常運作。我們的攤位剛好在整條走道的起點,所以大部分的人會先停在我們這一攤。

布展中的攤位,海報跟作品都定位好了
布展中的攤位,海報跟作品都定位好了

對了,我們還帶了一個秘密武器,乖乖。這大概只有臺灣人懂,把綠色乖乖放在設備旁邊,祈禱它一切乖乖運作不要出包。

我們的秘密武器,綠色乖乖,保佑設備不要當機
我們的秘密武器,綠色乖乖,保佑設備不要當機

賽前的英文簡報練習

比賽期間我印象最深的其實不是白天的賽場,而是每天晚上。我們三個人會擠在房間裡一遍一遍練簡報,誰先講問題,誰接著 Demo,誰做總結,遇到卡卡的地方就停下來討論怎麼講更順。

這件事對我特別重要,因為這是我第一次全程用英文發表。賽前我就花了很多時間練口說,但真的要站在外國評審面前講,還是完全不一樣。那幾個晚上的反覆練習,後來在賽場上真的救了我們很多次。

兩天的評審與展示

比賽要比兩天。這兩天我們接待了六位評審,還有數不清的記者跟觀眾。每一次介紹我們都固定用同一套節奏,先講清楚作品要解決什麼問題,再 Demo 給對方看,最後做總結。

評審跟觀眾當然有很多問題,我整理兩個幾乎每位評審都會問的。

Q:現在的高樓層電梯大多有兩台以上,這樣不就已經能解決尖峰時段的擁堵了嗎?

A:根據我們的觀察,多裝幾台電梯並沒有辦法解決電梯已經客滿卻還是每一層都停的問題,更沒辦法在需要的時候啟動緊急模式。我們解的是判斷跟優先權,這不是多加幾台電梯就能補上的。

Q:當初怎麼想到這個主題的?

A:因為臺灣的夏天很熱,電梯又常常很擠,擠在裡面心情會很差,所以想做一套系統來提升電梯運行的效率。另外是高樓層的住戶如果遇到緊急狀況,本來就需要更多時間到一樓,這中間只要又有人按電梯,就可能耽誤到處理的時間。

穿著隊服跟評審介紹作品,指著海報一路講下來
穿著隊服跟評審介紹作品,指著海報一路講下來
世界賽會場上,我們三個穿西裝在攤位前的合照
世界賽會場上,我們三個穿西裝在攤位前的合照(照片來源:張靖杭學長)

過程中也遇到不少挑戰。有一位來自東南亞的評審,口音讓我一度聽不太懂他的問題,只能不斷跟他確認追問,才勉強聽懂再回答。也有很有趣的時候,很多日本觀眾不太會說英文,我們就乾脆拿著 Google 翻譯機一句一句翻給他們聽,雖然有點克難,卻是這次很難忘的體驗。

在異國的會場裡,看到萬國旗中那面屬於我們的國旗,那一刻特別有感覺。

萬國旗裡的那面,就是我們代表的臺灣
萬國旗裡的那面,就是我們代表的臺灣

銀牌

最後,我們這組拿到了銀牌。

在會場莫名其妙獲得發明事物所 A 等的作品評分
在會場莫名其妙獲得發明事物所 A 等的作品評分
拿到獎牌後三個人的合照,中間就是那面銀牌
拿到獎牌後三個人的合照,中間就是那面銀牌(照片來源:張靖杭學長)

這個專題其實一年前曾經在上海發表過,當時被評審指出還很不完整。經過一年不斷打磨,砍掉重練,再到這次帶著全新的車廂模型跟辨識模組來到世界賽,最後拿到肯定,我們三個都非常振奮。這不是一個一次就做對的作品,而是被改了很多很多次,才慢慢長成現在這樣。

比賽後的關西行程

比賽結束後,我們還在關西待了大概一個禮拜。這是這趟旅程很珍貴的一段,難得能來到辦萬博的大阪,總不能只待在會場。

位於堺市港邊飯店的夕陽景色
位於堺市港邊飯店的夕陽景色

寫在最後

回頭看這整趟,我最深的感觸是,這是我第一次以旅遊以外的目的出國,而且是代表臺灣去比賽。

以前出國,行李裡裝的是換洗衣物跟相機。這次裝的是 3D 列印的車廂,辨識模組還有一堆工具。以前站在國外的街頭是觀光客,這次站在世界博覽會的會場裡,胸前是臺灣的隊服,面對的是各國的隊伍跟評審。這種身分的轉換,是這趟最特別的地方。

從初賽帶著一個跑不動的作品拿到金牌,到把它整個砍掉,為了行李重量重做成能拆三份的車廂模型,重寫邏輯,把辨識搬到真的電梯裡測試,再到大阪用不熟練的英文一次次介紹,最後拿到銀牌。這一年多的過程,比那面銀牌本身還讓我印象深刻。我也很慶幸能跟學長還有另一位夥伴一起,把這個作品帶上世界賽的舞台。

最後接我們回臺灣的飛機。帶著一面銀牌跟滿滿的回憶回家
最後接我們回臺灣的飛機。帶著一面銀牌跟滿滿的回憶回家

謝謝一路上幫過我們的老師跟夥伴,也謝謝看到這裡的你。這趟大阪,值得。