投稿類別 : 工程技術類 篇名 : 作者 : 樊凱傑 市立松山工農 資三仁班 簡聿均 市立松山工農 資三仁班 指導老師 : 蔡祈安老師
壹 前言 一 研究動機 現今大型停車場的顯示板功能已經普及化, 唯能顯示尚餘多少車位, 但未能顯示 哪個車位是否有空位, 甚至計算尚餘車位有誤判情形發生, 造成駕駛人浪費一些時間 來尋找車位, 因此 : 我們想要改善原先的停車管理系統的缺失 我們想設計一套整合式的停車管理系統, 能顯示該停車場尚餘多少車位以外, 還 可以告知駕駛人目前可以使用車位的位置, 在第幾層樓 第幾排 第幾個位置, 以解 決駕駛人尋找車位的煩惱, 還可以節省許多寶貴的時間 二 研究目的 如圖一顯示出有 50% 以上的駕駛人, 停車需要花費 10 分鐘以上, 為了解決許多駕駛人在尋找停車位上的困擾, 因此我們利用 Arduino Visual C# 程式 SQL 資料庫, 進行資料統計, 再配合 RS232 超音波感測器偵測後, 將資料傳送至資料庫中, 最後再藉由 ASP.Net 的網頁架構抓取 C# 的資料, 讓駕駛人能輕鬆的利用網路查詢, 得知該停車場現在停車狀況 現今臺灣的車輛已到達六百二十萬, 這意味著車位的需求也日益增加, 尤其平日 的上班 ( 課 ) 族, 以及假日提供休閒娛樂 ( 含逛街等 ) 場所, 若能在短時間內尋找到車位, 就能大幅增加停車效率 60.00% 40.00% 20.00% 0.00% 101 年 103 年新北市台北市 圖一自用小客車駕駛人平均每次尋找車位時間曲線圖 ( 資料來源 : 中華民國交通部,2015 年 10 月 24 日 取自 http://www.motc.gov.tw/ch/index.jsp) 三 研究功能 利用超音波感測器讀取訊號, 並將訊號傳送至電腦螢幕與網頁, 顯示給駕駛人知 道停車位在哪裡, 且將訊號儲存至 Visaual C# 資料庫, 以減少尋找車位的時間, 提高 1
停車效率 四 研究方法 我們利用 Arduino 控制板與超音波感測器的結合, 將超音波感測器設置於停車格 尾端的正上方, 當車子停入到正確的位置後, 超音波感測器偵測到車輛, 改變原先的 反射信號距離, 切換為紅燈以示使用中, 這是整個模組可否成功的最重要一環 利用 Arduino 程式將信號傳送於電腦的控制系統, 經由資料庫的讀取顯示於螢幕 上 利用亮燈的與否表示未使用以及使用中, 並配合螢幕顯示, 提供給駕駛人尋找車 位, 以提高停車效率 貳 正文 一 Arduino 裝置 Arduino 是一個有可程式化的微處理控制器, 這幾年來在電子領域中也有很多討論及迴響, 其中本身具備多項優點, 不但支援多項互動程式 ( 如 :Adobe Flash Max/MSP C) 以外, 更可以簡單的與感測器以及各式各樣的電子元件連接, 而且操作簡單資源多, 在傳統上, 要開發微控制器的程式, 開發者需要具備電子電機相關科系的背景, 一般人較不容易進入這個世界, 而 Arduino 控制器即使非電子電機族群的使用者, 也可以輕易上手, 且價格也較為便宜 圖二 Arduino 控制面板 二 超音波感測器 超音波感測器是由超音波發射器 接收器和控制電路所組成, 常搭配 Arduino 控制器使用 當它被觸發的時候, 會發射一連串的超音波, 經由物體反射回音偵測測距離 另超音波感測器可使用的範圍極廣, 也是大眾喜愛的模組之一 以 Trig 為發射信號 Echo 為接收信號 2
圖三超音波感測器與作用原理 ( 圖片資料來源 : 取自 http://coopermaa2nd.blogspot.tw/2012/09/hc-sr04.html) 三 管理系統電路圖 我們使用 Fritzing 這套軟體大致模擬出了線路的狀況, 每一組感測器占用 4 個 Arduino 接腳, 分別是發射信號 (TRIG) 接收信號 (ECHO) 車位 LED 燈 還有警示音 ( 喇叭 ), 此外為了放大喇叭輸出的聲音, 我們使用了編號 9013 電晶體進行功率放大 圖四停車管理系統電路圖 四 管理系統流程圖 圖五控制器發射訊號流程圖 圖六電腦接收訊號流程圖 五 管理系統模擬實體圖 3
圖七停車管理系統實體圖 ( 正面 ) 圖八停車管理系統實體圖 ( 電路 ) 六 管理系統介面 圖九停車管理系統介面 七 管理系統測試步驟 ( 一 ) 停車警示燈 將超音波感測器安置在車子正上方偵測停車格如圖十, 以避免行人造成干 擾, 當系統正常運作時, 感測器開始偵測車子是否有停在停車格內, 此外我們在 停車位上方加入了 LED 燈, 提醒其他駕駛人, 該車位已有車輛停入 圖十車子定位偵測 4
( 二 ) 超音波偵測資料傳送至 RS-232 為確保資料能夠持續更新, 並設定每秒自動更新一次資料, 我們外加裝 Timer.h 模組 圖十一係讀取信號資料, 當沒有車 (68cm) 則送出訊號 0, 當超 音波感測器偵測到有車輛 (4cm) 則送出 1 圖十一偵測資料傳送至 RS-232 ( 三 ) 管理系統讀取 RS-232 資料 本系統需要讀取 COM PORT 接收資料, 因此 ; 我們在程式宣告 usingsystem.io.ports 模組, 並製作一個小型表單, 藉由 ComboBox 來顯示, 是 否有收到的 COM PORT 訊號, 然後設定鮑率 9600( 因為必須與 Arudino 設定相同 ) 當開始執行管理系統程式以後,Arduino 控制器所傳送出去的偵測資料, 現 今就已經傳送至停車管理系統的 TextBox 介面以及下方 DataGridView 的顯示表上, 如圖十二顯示 圖十二現代化停車管理系統讀取 RS-232 資料 5
( 四 ) 管理系統監測資料 本篇主要是討論停車位是否有停車輛, 因此我們只讀取資料中最尾端的 Main 值, 來偵測是否有停車, 0 表示沒有停車 1 表示有停車 圖十三現代化停車管理系統監測資料 ( 五 ) 超音波感測器數量增加測試 經過反覆確認後, 超音波感測器確實能夠讀取資料, 並且傳送至電腦 我 們採用相同模式加入第二組 第三組 第四組超音波感測器等, 來偵測更多的 停車位 本實驗中, 我們設定停車場 A 區的 1 2 3, 一共三個位置來做測試, 並進行實驗分析 從實驗得知, 當停車位沒有停車時, 螢幕顯示為 000, 當 A1 有人停車後, 螢幕顯示為 100, 此時 A1 停車格上方之 LED 燈亮起, 提醒駕駛人車子已經定位, 同時 ; 管理系統螢幕顯示,A1 變為紅色表示有停車 八 實驗結果 ( 一 ) 當第一格有車時, 輸出為 100 ( 二 ) 當第二格有車時, 輸出為 010 圖十四車位未使用硬體圖 ( 配合圖十六 ) 圖十五其中一車位使用中 ( 配合圖十七 ) 6
圖十六 A1 使用中的系統管理畫面 ( 配合圖十四 ) 圖十七 A2 使用中的系統管理畫面 ( 配合圖十五 ) 九 資料庫的存取 在確定資料能夠接收後, 我們經由下列程式碼, 如圖十八, 將每一次偵測到的資 料傳輸至 SQL 資料庫 RDdatabase.mdf 中以利統計, 此次設定儲存四種資料分別為 : 編 號 ( 資料數 ) 時間 ( 停車時間 ) 區域以及位置, 如圖十九 圖十八 SQL 的程式碼 圖十九資料庫儲存狀態 7
参 結論 在這次的專題製作上, 從擬訂題目到實作電路, 這一路上可說是非常艱辛, 我們花 費許多時間的研究與改進, 我們終於完成目標 雖遇到許多的困難與問題, 但這些問題是 以前從未遇見過的, 遠遠超出我們以前所學的範圍 我們延續了先前的管理系統, 加入新的概念, 增加了許多功能, 為使這套系統更接近我們預期的效果, 在程式撰寫方面下了許多功夫, 若遇到較無法解決的問題, 就與同學 老師一起討論與解決 另一方面參考許多停車場相關設施, 不斷的修正與改進之前的缺點, 最後克服所有困難與障礙, 完成整合式停車管理系統的製作 一 問題與討論 剛開始成品製作時, 我們使用光敏電阻做為偵測裝置, 因為成本上的考量, 光敏電阻的造價較為便宜, 但一般的停車場多半屬於地下室或較昏暗的地方, 考慮到光線 ( 如車頭燈 ) 容易造成光敏電阻的誤判, 所以使用上較為不理想, 因此 ; 我們改用超音波感測器來偵測, 較不受到干擾 傳送訊號部分, 對我們而言, 這是一大嚴峻的挑戰 我們首次嘗試將訊號傳送至電腦, 在沒有任何基礎上, 我們在 DataReceived 吃足了苦頭, 花費了許多的時間做研究, 並參考網路上數各種傳送資料的方式, 研究這些程式有哪些差異性 剛開始撰寫程式時, 我們只能讀取 COM Port, 接下來可以接收到 RS-232 資料, 卻只能顯示 ASCII 碼, 甚至有時候 COM Port 會突然自動中斷連線 在這過程中, 我們一步一步的解決問題, 最後, 終於能接收到傳送資料 再則 ; 電腦重複接收資料, 以至於畫面較為混亂, 因此 ; 我們希望 當訊號相同 時, 只要顯示一次, 以利系統判讀且管理較為方便, 所以程式採用判斷式監控訊號, 當訊號有改變時, 才顯示於螢幕上 另外, 為避免程式反覆的接收同一筆資料, 我們不採用 Timer 來掃描 RS-232, 而 係採用事件觸發方式 當 RS-232 發出訊號時, 才讀取資料 此時在老師的建議下, 使用了繼承的概念, 最後順利解決這項問題 停車管理系統製作, 已經完成停車場建構模型 軟硬體介面以及資料庫的建立 並且資料庫的統計與查詢也成功建置 盼望未來能夠藉由大數據的統計, 得知哪處停車場使用率最高, 然而我們原先是希望駕駛人, 能夠直接在網頁上查詢, 目前的停車場的停車狀況, 但是礙於時間關係, 我們尚未建置完成動態網頁, 希望未來能繼續完成現代化整合式停車場管理系統, 本次的專題製作讓我學習到, 知易行難的道理, 俗 8
話說 : 天下無難事, 只怕有心人 二 系統優點與缺點 ( 一 ) 優點 : 1 圖形化介面, 以利清楚得知駕駛人車位在哪裡 2 駕駛人能更快速的找到車位, 減少尋找車位的時間 3 停車定位系統, 指示車子是否停到定位 4 資料庫的統計能夠協助地方機關各區域的停車現況 ( 二 ) 缺點 1 當車子較低時, 可能會有偵測不到的情形 2 假若較大型物品放置在停車位上, 易造成誤判 三 未來展望 ( 一 ) 問題解決 為解決汽車的高度較低 ( 跑車 ) 會造成感測器誤判的情況, 改採較高功率的超 音波模組 再則, 如何判別是汽車或是大型物品, 可在停車位上方增加一組感測器, 並 安裝在前後方, 若兩組感測器有接收到訊號, 表示係車子, 若只接收到一組訊號, 表示係大型物品 ( 二 ) 系統創新 未來可增加的部分, 是網頁以及手機 App 功能, 目的是可以連接全台停車 場的管理系統, 讓駕駛人能夠利用手機或網路查詢, 隨時隨地都能取得即時停車 場資訊 經長期統計下來的資料, 我們能夠從資料庫中進行分析, 得知哪些區域的停 9
車場使用率較高, 哪些區域的停車場使用率較低, 以提供政府相關單位, 需要增 設停車場的重要參考依據 此系統除了可以使用在一般地下停車場外, 也可以應用於物流配送, 控管車 輛進出的時間 肆 引註資料 (1) 孫駿榮 吳明展 盧聰勇 (2012) 最簡單的互動設計 Arduino 一試就上手 ( 第二版 ) 台 北市 : 碁峰 (2) 楊明豐 (2015) Arduino 最佳入門與應用 : 打造互動設計輕鬆學 ( 第二版 ) 台北市 : 碁峰 (3) 呂明諭 王鼎棋 (2012) Visual C# 2010 程式設計基礎與應用 台北市 : 上奇資訊 (4) 陳惠貞 陳俊榮 (2011) 新思維系列 2 Visual C# 2010 程式設計 台北市 : 松岡 10