感謝電路城賣家dimension提供了這么好的資料!
該懸浮裝置用arduino uno控制,l298n驅動四個線圈電磁鐵,配合霍爾傳感器就能懸浮了。
裝置用到的東西有:arduino主控板、線圈、大磁鐵、霍爾傳感器
視頻演示:
磁力對懸浮物的控制,其基本原理是:
霍爾傳感器在浮子的正下方,當檢測到浮子向左運動時,兩邊的線圈一個吸一個拉,把它推向右;反之如果浮子想右運動,那么兩個線圈的電流都反向。用前后左右共四個線圈,兩個霍爾傳感器配合,就可以把浮子穩(wěn)定的懸浮住。但是線圈產生的力是比較小的,因此只能夠推動浮子在水平面移動,要克服浮子的重力讓它懸浮起來,就要在四個線圈下面再加一個大的環(huán)形磁鐵提供斥力。
霍爾傳感器介紹:
霍爾傳感器是一種測量磁場強度的元件,可以把通過它垂直面的磁力線強度轉化為不同的電壓值,這樣我們用單片機ADC讀取之后就可以得到浮子的位置信息了。霍爾傳感器的安裝位置很有講究,前面說了它是測量通過其垂直面的磁力線,也就是浮子發(fā)出的磁力線,而我們電磁線圈在調節(jié)的同時磁力線也在變,如果這個變化被霍爾感應到了結果就很不可靠了,所以霍爾的安裝位置應該是位于四個線圈的中間高度,這里的磁力線剛好是與霍爾平行,不產生影響。
霍爾元件一般需要放大電路放大,但是考慮到對一些初學者比較復雜,大家可以考慮直接到網(wǎng)上買那種線性霍爾元件模塊,內置放大的直接接到arduino上就能用,注意一定要線性的!
為了讓懸浮更加穩(wěn)定,采用了PID控制的平衡算法。把霍爾元件度數(shù)也就是浮子的位置作為輸入變量輸入PID函數(shù),設定一個目標值也就是浮子在中間位置時的讀數(shù)值,然后把輸出賦值給PWM驅動線圈,剩下的就是調整PID參數(shù)讓它自己控制浮子。
至于線圈,用漆包線在支架上繞200-300圈基本就夠了。