‧前言:藉由 How to interface the Arduino with C# 這篇教學範例,記述其操作步驟。
感謝原作者,Thanks John。
‧目的:由 C# 經 RS-232 傳輸字串至 Arduino,再由 Arduino 回傳到 C# 顯示。
‧主要工具:
- Arduino UNO x 1
- Visual C# 2010 Express (Google搜尋下載試用)
‧參考資料:
- Visual C#2010 精要剖析
- Interacting with the Arduino with C# <<原文請點選
‧流程說明:
1. 於Arduino撰寫程式,功能為接收來自 C# 的資料,再回傳出去。
2. 啟動 Visual C# 2010 Express - 新增專案 - Windows Form 應用程式。
3. 新增控制項,包括:
- Label 控制項 x 2
- comboBox 控制項 x 2
- button 控制項 x 4
- textBox 控制項 x 2
- serialPort 控制項 x 1
4. 設定各控制項之屬性,如圖:
5. 加入程式碼:
5.1. 提供選取通訊埠和傳輸速率,在 InitializeComponent(); 後加入設定通訊參數之程式碼:
5.2. 在 btnStart "開始" 按鈕上點選兩下,於 Click 事件處理程序中加入啟動通訊之程式碼:
5.3. 在 btnStop "結束" 按鈕上點選兩下,於 Click 事件中加入停止通訊之程式碼:
5.4. 在 btnSend "傳送" 按鈕上點選兩下,於 Click 事件中加入傳送資料之程式碼:
5.5. 先點選 serialPort1,在屬性視窗的事件(閃電圖示)中,DataReceived事件上點選兩下,即在 DataReceived 事件處理程序中,與事件前加入通訊埠處理資料之程式碼:
5.6. 在 btnClear "清除" 按鈕上點選兩下,於 Click 事件中加入清除資料之程式碼:
6. 裝置連線:
7. 預期結果:
2012年1月5日 星期四
2012年1月3日 星期二
Arduino 與羅盤、加速計之整合 - Arduino + HMC6352 compass + ADXL335 accelerometer
- 母計畫:Arduino 頭盔 XY 位置輸出控制器
- 目的:以 Arduino 讀取羅盤、加速計模組之量測值
- 主要材料:
- Arduino UNO x 1
- HMC6352 羅盤模組 x 1
- ADXL335 三軸加速計模組 x 1
(也可以一個HMC6343取代HMC6352+ADXL335,但價格較高)
- 麵包板與單心線 - 參考資料:
- HMC6352 技術文件與範例
- ADXL335 技術文件與範例 - 接線與電路圖:
- 程式撰寫邏輯:
- 將上述兩個範例程式合併。
- 頭部的傾斜角僅量測X與Y軸向傾斜角(前後俯仰、左右擺頭),故僅接類比A0、A2,並同步修改範例。
- 在輸出羅盤、X與Y軸加速度三個數值前,分別冠上"C"、"X"、"Y"作為識別標籤。
如輸出C20X500Y550,代表方位20度、X軸加速度500單位、Y軸加速度550單位。 - 程式碼:
Arduino 頭盔 XY 位置輸出控制器
- 目的:以羅盤和加速計偵側頭部之轉向和傾斜角度,藉由 Arduino 傳輸至 PC 顯示 X、Y 位置。
- 架構示意圖:
- 製作流程:
1. Arduino 與羅盤、加速計之整合。
2. C# 讀取 RS232 訊號解碼。
3. 整合 Arduino、C# 與 XNA 3D模型展示。
4. 傳輸訊號處理。
訂閱:
文章 (Atom)