arduino倾斜开关python语言_Arduino小白的学习记录:倾斜开关实验
一、介紹
帶有金屬球的球形傾斜開關,它用于檢測小角度的傾斜。圖7.1 傾斜開關模塊
二、材料準備Arduino Uno 主板*1
USB數據線*1
傾斜開關模塊*1
杜邦線若干
三、實驗原理
在傾斜開關中小球以不同的傾斜角度移動以造成觸發電路的原理。傾斜開關模塊使用雙向傳導的球形傾斜開關。當它向內一側傾斜時,只要傾斜度和力度滿足條件,開關就會通電;從而輸出低電平信號,否則開關斷開,從而輸出高電平信號(這一點大家可以對照圖7.2的原理圖進行分析)。
在這個實驗中,我們使用一個傾斜開關模塊和一個已經連接到Arduino主板13腳的LED來構建一個簡單的電路。
使用到D13引腳上面的LED顯示燈,將引腳SIG連接到Arduino Uno電路板的數字引腳D7,然后傾斜開關輸出低電平信號,LED將亮起,否則它將會熄滅。圖7.2 電路原理圖
這里傾斜指的是向內部傾斜,金屬小球才能將引腳導通,從而輸出低電平。
四、實驗過程
首先我們需要搭建一個測試電路。如圖7.4所示,我們先將傾斜開關模塊上的D0作為信號輸出端口接到板子的7引腳上,將GND接到板子的GND,最后將VCC接到5V(其實也可以接到3.3V,只是這樣燈會暗一些而已)。圖7.3 模擬電路連線圖
按照上面的說明接好線后就是圖7.4的樣子了。圖7.4 實際的電路連線圖
給板子接上USB連接線后,我們就可以進行程序部分的工作了。
五、代碼
/************************************* 項目名字:傾斜開關實驗* 接口列表:* tile switch Arduino Uno R3* D0 7* GND GND* VCC 5V*編寫:南友***********************/
const int sigPin=7; //定義引腳名稱const int ledPin=13;
boolean sigState=0;
void setup()
{
pinMode(ledPin,OUTPUT);
pinMode(sigPin,INPUT);
Serial.begin(9600);
}
void loop()
{
sigState=digitalRead(sigPin);//讀取引腳的值 Serial.println(sigState);//通過串口監視器顯示引腳的值 if(sigState==HIGH)
{
digitalWrite(ledPin,LOW);//當7號引腳檢測為高電平,輸出13引腳為低電平 }
else
{
digitalWrite(ledPin,HIGH);//當7號引腳檢測為低電平,輸出13引腳為高電平 }
}
六、效果展示
將程序上傳到Arduino板子上后,我們就可以看到激光發射器的效果了。圖7.5 傾斜開關
如圖7.5所示,我們看到PWR-LED+這枚LED燈一直是出于常亮狀態,說明這個模塊處于一個通電的狀態。
接下來我們就通過一個小視頻一起看看這個傾斜開關的效果吧~知乎視頻?www.zhihu.com
七、總結分析
傾斜開關向左傾斜時才會有反應,而向右傾斜時則沒有反應,我想大部分人和我一樣,覺得這種設定并不是一個理想的狀態,因為一般的傾斜包括很多種,可以向左,也可以向右。我后來也試著把向右傾斜也給13引腳輸入高電平,結果效果卻更不明顯了,因為無論怎么放,傾斜開關里的小球都會停留在另一端,并不會穩定在中間,這樣用于指示的LED燈就會一直處于常亮的狀態了,所以最后還是按照原來的設定進行操作了。我想這個問題可以通過提高小球和金屬管的摩擦因數和延長金屬管的長度來解決,這樣就可以讓金屬球較為穩定地停留在中間部位了。
總結
以上是生活随笔為你收集整理的arduino倾斜开关python语言_Arduino小白的学习记录:倾斜开关实验的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言 bool_程序的数据要放到哪里呢
- 下一篇: python wechatpay微信支付