2008年2月28日 星期四

SPI與I2C介面使用心得

最近開始研究dsPIC 的 I2C 與SPI,因為dsPIC都附有這2個介面的硬體,所以不用很辛苦的自己寫時脈。


不過有趣的是,2個介面microchip都有提供source code 供人使用,不過因為小弟實在對這2個介面很不熟悉,所以只好和同學一起研究了,不過因為I2C的sourece code 寫得比較易懂,所以用起來就很快上手了,而SPI 因為還包含四種邊緣判斷,所以debug了一個星期,最後終於搞懂了,因為I2C 和SPI都是利用EEPROM來當範例,為了證明自己已經學會了,就找了I2C的溫度感測器,SPI的DAC。


看看溫度感測器的成果



看看DAC的成果



馬達雜訊分析

對於馬達這類重載的元件來說,在電路的設計上就得更加小心

由其在有刷的直流馬達,電刷所產生的spark更是嚴重的雜訊

如不加以處理,更會產生整個系統的當機

先來看未做處理的馬達雜訊有多可怕



 

在馬達2極端加上一無極性電容




在+極端與殼上加入一電容 &  -極端與殼上加入一電容



最後+極端與殼上加入一電容 &  -極端與殼上加入一電容,+ - 極端也加入一電容



由示波器可得知,在直流有刷馬達焊上3顆無極性電容,可有效降低SPERK產生的雜訊

其實在馬達的設計上是需要三種電容來抑制馬達所產生的電容

1、2極端的電容,這可消除馬達高頻雜訊

2、馬達殼上與2極端各1的電容,由於馬達在轉動的時後,會有雜訊產生在馬達殼上,可消除馬達殼上的雜訊

3、電容端的無極性電容,可消除馬達啟動電流的雜訊

以上是對設計馬達電路時硬體該注意的地方


兩輪平衡車-平衡

先看看簡單的平衡





加速車身速度控制,增加響應


 



用比較不正規的方式實現單輪定位



兩輪平衡車-電路

介紹一家不錯的PCB 廠


晶功電子http://www.pcb-sk.com.tw/


洗的板子還不錯




焊好的樣子,使用的是dsPIC30F6010A ,因為只有一組decoder,所以另外再用了一顆dsPIC30F3010,這樣就有2組deocder了,因為microchip可以申請sample,所以當然大力的用他們家的產品嚕!


這次這次使用的藍芽,模組是買現成的,不過他賣的小板子我不滿意,所以就自己重layout了


看看裝在車上的醜樣子




兩輪平衡車-機構

首先先介紹馬達,這次用了"松精機"的直流馬達,很感謝楊先生的支持


再來介紹機構主體,一樣找"銧奕鋼業有限公司",這次選用的是黑鐵


主體上放的是角度計,FAS-G



馬達連接座找"魯卡"幫忙

http://tw.myblog.yahoo.com/looka330/     ←他是"魯卡"


 

這次的螺絲軍團


馬達輪子合體


所有成員


完整機構圖