2016年7月14日 星期四

Arduino控制軟碟機的步進馬達

前幾天整理零件櫃找到一台 31/2"軟碟機
順手把它拆開, 拿它的馬達來做實驗看是否能控制
3 1/2"的軟碟機的馬達為 四線式Bipolar 步進馬達,  兩線圈 四線控制用兩個 H-bridge 來控制
拆開時的排線為包含一的遮斷開關的7PIN 排線, 這時要用三用電表 量一下,  4PIN中如下圖
綠色框 中的第1pin 跟 第3pin 有阻抗,  第 2pin 跟 第4pin 有阻抗,  所以我們就知道它的架構了
利用for Arduino 用的motor control 去控制真的是超簡單,  不像我之前用51去做那樣複雜, 簡單的接線,  簡單的程式你就可以控制步進馬達.
DK Electronics的arduino library直接找個範例就可以動




2016年7月7日 星期四

Ardroid系統利用藍芽結合arduino做IR傳送與接收

之前利用過8051跟PIC去做紅外線的練習
紅外線研究(1)-- PIC18F4553接收
紅外線研究(2)-- AT89C52發射
這兩篇都是自己寫解接收的IR的波形再去做傳送!
而現在Arduino的東西都已經幫我們寫好了, 真是世代交替, 好用的工具出得很快
這篇的應用是把所學過的工具程式做一個整合
1. Android系統介面設計及藍芽控制
2. Arduino UNO控制IR 接收與傳送
先把控制端硬體線路接好
藍芽模組

硬體完成後, 在來就是Arduino上的程式
程式規劃為
1. 紅外線接收學習
    a. Arduino紅外線模組接收到遙控器的訊號, 再經由藍芽模組傳送到Andriod 裝置
    b. Andriod 裝置接收到的IR 訊號儲存成csv檔便於以後直接輸出
2. 紅外線遙控家電
    a. Android裝置經由學習到的IR訊號直接發送經由藍芽模組由arduino接收並送出IR訊號
程式部分先利用NB C#的控制介面做驗證
初步驗證可以遙控到 SONY_TV, Hitachi冷氣, TBC數位盒, 再來就開始著手Andriod上的程式開發.

2016年6月14日 星期二

Android系統控制藍芽A2DP裝置

前一陣子著手寫android系統控制藍芽(Serial Port Profile)透過另一個藍芽(SPP)去接收另一個裝置的資料後, 想到家裡有A2DP 的喇吧, 想說若是要測試這種喇吧是否可以寫一個控制的APP去連上這個裝置然後控制左聲道發聲, 右聲道無聲,  量測左聲道, 反之, 右聲道發聲,  左聲道無聲, 量測右聲道.
設定研究目標:
1. 手機藍芽連上藍芽A2DP裝置
2. 透過藍芽撥放1KHz tone
3. 聲音左右聲道控制
程式架構:
1. 開啟藍芽
2. 搜尋藍芽裝置

3. 配對與連接此音箱裝置








4. 設定播放參數與聲音檔
mPlayer = new MediaPlayer();
String file = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_MUSIC)+"/1K.mp3";
mPlayer.setDataSource(new FileInputStream(file).getFD());
mPlayer.setAudioStreamType(mAudioManager.STREAM_MUSIC);
mPlayer.setVolume(1.0f, 0f);
mPlayer.prepare();
mAudioManager.setStreamVolume(mAudioManager.STREAM_MUSIC, mAudioManager.getStreamMaxVolume(mAudioManager.STREAM_MUSIC), 1);
mPlayer.start();
5. 測試




2016年6月5日 星期日

手機或平板利用藍芽接收24G雷達感測器資料

接續 Arduino利用藍芽模組接收24G雷達感測器資料這篇文章把原本是用NB接收資料做處理的功能變成用android 手機或者是平板來接收資料!
給之前沒接觸的朋友兩點建議
1. 先了解android程式框架, 語法可以邊寫邊學(編譯器會幫你除錯)
2. 認識藍芽的基本架構( 你要連接哪一種 profile)
[Android]藍牙主動發起配對實例這裡是網路覺得很有用的文章
在寫這個 APP花最多時間的是 決定哪一種畫面來顯示你要的結果, 結果利用TabHost這類 來做畫面的處裡(雖然這類已經被android遺棄, 但還是可以用)
決定操作方式後就開始撰寫程式
1. 藍牙設定頁面包括開啟BT按鈕, 搜尋BT按鈕, 送command edittext和按鈕, 接收資料並顯示
2. Show Data 頁面包含接收資料按鈕, 接收資料並顯示, 時間注示, 圖形顯示

上面兩張圖是在兩台不同廠牌的平板執行畫面.
底下為整個執行影片