新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式超聲波測距儀的設計方案

        嵌入式超聲波測距儀的設計方案

        作者: 時間:2011-07-22 來源:網絡 收藏

          2.2 電路

          電路主要包括兩個部分:發射電路和超聲波接收電路,具體的電路如圖3所示。圖2中上半部分就是超聲波發射電路,微處理器AT89C51通過編程在端口P16產生一個40kHz的超聲波信號,經過兩個74LS14非門將信號驅動整形,再由三極管Q9對其進行放大,最后經過變壓器T1送到超聲波傳感器CSB-T40,這樣就可以通過超聲波傳感器CSB-T40發出相應的超聲波信號。而圖3中的下半部分就是超聲波接收電路,超聲波信號通過障礙物發射到超聲波傳感器CSB-R40后,產生一定的電信號,電信號通過集成塊BX1490放大后送到了2個74LS14非門電路整形,最后進入微處理器AT89C51的P17端口。這樣就完成了1次超聲波的掃描過程,它可以通過程序來控制計數器,將計數器的數據轉換為相應的時間,再用時間乘以超聲波的傳播速度后除以2,既可以得到障礙物與超聲波傳感器之間的距離。

        2.3 CAN總線通信電路

          考慮到現在的智能測試設備日益趨于網絡化,則將CAN總線通信功能也進了此超聲波測距儀中,CAN總線通信電路系統主要有AT89C51微控制器、獨立CAN通信控制器SJA1000、CAN總線驅動器PCA82C250及復位電路IMP708組成。CAN總線應用節點具體電路如下圖4所示。為了提高系統的抗干擾能力,設計在SJA1000和CAN總線驅動器PCA82C250之間增加了光電隔離器6N137。當微處理器AT89C51將測距結果數據通過P0口發送到CAN總線控制器SJA1000,由SJA1000將并行數據轉換為串行數據從端口TX0發出,經過光電隔離器6N137后到達CAN總線驅動器PCA82C250,最后將數據發送到CAN總線上。相反,來自CAN總線的數據也可以經過相應電路到達微處理器。這樣就可以實現測距儀與上位機的通信功能。

          3 程序設計

          3.1 主程序設計

          系統主程序主要包括系統的啟動后對系統的初始化、超聲波發射與接收、中斷管理、計時程序、測距計算、結果顯示、CAN通信、報警等其他子程序組成。根據以上超聲波測距儀的工作原理描述,系統主程序的流程圖設計如圖5所示。在主程序初始化后就進入超聲波信號發送程序,即利用程序產生超聲波信號由微處理器的P16端口送出,此時系統進入計時狀態,同時檢測P17端口是否能接收到超聲波的回波信號,但檢測到回波信號就關閉外部中斷進入計算距離子程序,接下來進行是否報警驗證和CAN通信子程序,最后打開外部中斷完成一次測距掃描過程,即主程序結束。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        超聲波液位計相關文章:超聲波液位計原理


        液位計相關文章:磁翻板液位計原理




        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 苏尼特右旗| 金昌市| 隆尧县| 武夷山市| 绍兴市| 盐亭县| 舟山市| 宜川县| 女性| 赣榆县| 乌鲁木齐市| 昌都县| 甘德县| 西乡县| 隆尧县| 新竹县| 北京市| 湾仔区| 康乐县| 天峻县| 香格里拉县| 台北市| 得荣县| 沂水县| 汾阳市| 广宗县| 新化县| 伊春市| 托克逊县| 高州市| 布尔津县| 焦作市| 佛坪县| 定远县| 江川县| 柯坪县| 武安市| 盱眙县| 潜山县| 平湖市| 阜宁县|