前言
Hi 大家好,我是梅森。這篇是上一篇臺灣選拔賽紀錄的續集。我們這台智能電梯在臺灣選拔賽拿到金牌之後,順利拿到代表臺灣去日本比 IEYI 世界賽的資格。作品英文名字一樣是 Intelligent Elevator Traffic Management System,一台會在擁擠時讓運行更有效率的電梯,還多了一顆為了救命而設計的緊急按鈕。
這次同組的張靖杭學長也寫了一篇大阪決賽的紀錄,很推薦一起看。我這篇會多花篇幅在我自己負責的兩塊,一是影像辨識建模,二是車廂模型的重做,另外還有第一次代表臺灣出國比賽的那些心情。

決定把作品砍掉重練
確定要去世界賽之後,我們做的第一個決定就是砍掉重練。
臺灣賽時我們其實是帶著一個不算完整的作品去的。電梯的運行邏輯沒設計好,成品跑不太起來,只能靠我寫的模擬系統展示。所以第一件要處理的事就是重寫運作邏輯。初賽我們卡在一台樹莓派要同時顧馬達又要接收樓層請求,導致馬達每跑一段就要停一秒判斷,看起來很卡。這次我把整套邏輯重新想過,讓它更貼近真實電梯的運作。
第二件事更現實,就是行李。臺灣賽時我們做了一台實際的三層樓電梯模型,又大又重還不太穩,光是平安搬到會場就很吃力,更別說要扛出國過海關。我們算了一下行李重量的限制之後,決定放棄原本的三層樓電梯,改成車廂模型。意思是不再蓋一整棟樓,而是只做一個電梯艙當測試站,再搭配一個電梯空間辨識模組跟一個能實際運行的測試平台。

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

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

影像辨識建模:改用 OpenCV 的 MOG2
辨識的部分延續了初賽的方向,不去數人頭,而是直接判斷空間被佔掉多少。這次我用 OpenCV 的 MOG2 演算法來做背景相減,讓模組能比較穩定地分辨電梯艙到底擠不擠。
模組本身就是一顆朝下的 Web-Cam,整合進 3D 列印的外殼裡,程式主要跑在筆電上。比起初賽那個臨時趕出來的版本,這次的辨識模組完整很多,也真的裝得上去用。至於狀態要怎麼顯示在電梯上,是另一段讓我頭很痛的故事,等一下再講。


想做一塊像日本電梯那樣的螢幕
到了世界賽這個版本,我還想幫電梯加一塊螢幕。我參考的是日本電梯的樓層顯示畫面,就像下面這支影片那樣,彩色的電子顯示屏會秀出目前樓層還有運行狀態,也會搭配語音廣播,看起來又清楚又專業。我很希望我們的車廂也能做到這種效果,把目前樓層跟擁擠狀態直接顯示出來。
於是我找了一塊 TFT LCD 來做這件事。結果這塊螢幕比我想像中難搞非常多。從接線腳位到驅動程式,我幾乎每一步都卡關,光是要讓它正確亮起來,把畫面穩定地刷出來,就花掉我大把時間。中間換了不同的接法跟函式庫,也反覆除錯到很晚。


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

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

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

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

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


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

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

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

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

每天晚上,在房間一起練簡報
比賽期間我印象最深的其實不是白天的賽場,而是每天晚上。我們三個人會擠在房間裡一遍一遍練簡報,誰先講問題,誰接著 Demo,誰做總結,遇到卡卡的地方就停下來討論怎麼講更順。
這件事對我特別重要,因為這是我第一次全程用英文發表。賽前我就花了很多時間練口說,但真的要站在外國評審面前講,還是完全不一樣。那幾個晚上的反覆練習,後來在賽場上真的救了我們很多次。
賽場上的兩天
比賽要比兩天。這兩天我們接待了六位評審,還有數不清的記者跟觀眾。每一次介紹我們都固定用同一套節奏,先講清楚作品要解決什麼問題,再 Demo 給對方看,最後做總結。
評審跟觀眾當然有很多問題,我整理兩個幾乎每位評審都會問的。
Q:現在的高樓層電梯大多有兩台以上,這樣不就已經能解決尖峰時段的擁堵了嗎?
A:根據我們的觀察,多裝幾台電梯並沒有辦法解決電梯已經客滿卻還是每一層都停的問題,更沒辦法在需要的時候啟動緊急模式。我們解的是判斷跟優先權,這不是多加幾台電梯就能補上的。
Q:當初怎麼想到這個主題的?
A:因為臺灣的夏天很熱,電梯又常常很擠,擠在裡面心情會很差,所以想做一套系統來提升電梯運行的效率。另外是高樓層的住戶如果遇到緊急狀況,本來就需要更多時間到一樓,這中間只要又有人按電梯,就可能耽誤到處理的時間。

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

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

這個專題其實一年前曾經在上海發表過,當時被評審指出還很不完整。經過一年不斷打磨,砍掉重練,再到這次帶著全新的車廂模型跟辨識模組來到世界賽,最後拿到肯定,我們三個都非常振奮。這不是一個一次就做對的作品,而是被改了很多很多次,才慢慢長成現在這樣。
比完賽,順便玩了關西一個禮拜
比賽結束後,我們還在關西待了大概一個禮拜。這是這趟旅程很珍貴的一段,難得能來到辦萬博的大阪,總不能只待在會場。

寫在最後
回頭看這整趟,我最深的感觸是,這是我第一次以旅遊以外的目的出國,而且是代表臺灣去比賽。
以前出國,行李裡裝的是換洗衣物跟相機。這次裝的是 3D 列印的車廂,辨識模組還有一堆工具。以前站在國外的街頭是觀光客,這次站在世界博覽會的會場裡,胸前是臺灣的隊服,面對的是各國的隊伍跟評審。這種身分的轉換,是這趟最特別的地方。
從初賽帶著一個跑不動的作品拿到金牌,到把它整個砍掉,為了行李重量重做成能拆三份的車廂模型,重寫邏輯,把辨識搬到真的電梯裡測試,再到大阪用不熟練的英文一次次介紹,最後拿到銀牌。這一年多的過程,比那面銀牌本身還讓我印象深刻。我也很慶幸能跟學長還有另一位夥伴一起,把這個作品帶上世界賽的舞台。

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