2023年10月19日 星期四

基礎電子學.整流二極體.充電與太陽能板

 基礎電子學.整流二極體.充電與太陽能板


電的流動和水的流動相似.水由高位流向低位.

負電子由高電壓流向低電壓.

電流量和電池的容量會和充電時間有關,

另注意電線粗細要搭配電流大小以免過熱燒毀,

一般使用上電源供應電壓應和負載設備需求電壓一致.

若電源電壓過高則設備將會燒毀.

例19V電源只能用在19V電器.220v只能用在220v電器.

若220v電力用在110v電器則會燒毀.

但在充電時充電器電壓需高於電池電壓約1.15~1.2倍左右.

例如電池額定3.7v則電源需4.4v左右.

一般手機用USB5V充電器.但手機內部降壓到4.4v再到3.7v電池.

例如車輛在12v電瓶充電時發電機的電壓應為13.8v.

而電池的標示容量單位為mAH或AH.

例如2000mAH=即輸出2000mA下可使用1小時H.

或是6AH=在輸出6A設備可使用1H小時.

各設備基本上輸出端不可輸入電力.

充電器的輸出端輸入了電力可能導致充電器燒毀.

而電池的輸出端和輸入端都是同個點.

因此充電時需使電力單向流動防止電力回到充電器.

雖說充電壓高於被充電池.但在安全上是必要的防止.

尤其是太陽能板的充電運用是必要的零件.

此時搭配整流二極體使電流作單向移動.

圖示黑線端接負極.三角方向表示電流通行方向.

以電表切至二極體檔或電阻檔量測整流二極體2端.

正向量測為通路.而反向量測將形成斷路.

將二極體串接在電池和燈珠之間.

因18650電池為4v.燈珠為3v所以要多加了100歐電阻.

當電流由電池正極流向燈珠再回到電池負極形成迴路.

但串上整流二極體阻止了電流回負極所以形成斷路燈不亮.

將整流二極體安置在充電器和電瓶之間.電力將呈單向移動.

而防止電力回流至充電器或太陽能板導致損毀.

選用整流二極體時要注意最大耐壓和電流值.以及電線粗細的電流值.

安裝在充電器正向則標記接電池正.反之接在電池負端則標記接充電器負極.

量測電瓶電壓這只剩9v的就算充了也會很快就掉電.一般保持電力下壽命約3年.

選用可調電壓的工業鐵殼電源.將AC插頭線接到電源器.

依電池電壓選擇充電器電壓值比1.15~1.2倍.

要充12V電瓶將電壓調到13.8v.接線加上整流二極體到電池.

接在電瓶的正或負或是接在電源器都可以.依電流方向確認二極體方向即可.

通電後開始充電.量測電瓶和電源器的電壓.

可在充電器和電池之間加裝電流表.可了解充電情況並計算充電時間.

電流表顯示約0.6A.電瓶標示6AH=6A每小時H.

為0.6A的10倍.即電瓶完全無電要充到6AH滿電約要10小時.

剛是用AC110v室電變壓DC13.8V給12v電瓶充電.

現使用太陽能板來當充電器.給電池或手機充電.

將整流二極體串接在太陽能板和電池之間.

若不接或接反會變成電池的電流向太陽能板.可能造成損壞.

可串接或並接太陽能板.來提高電壓電流的需求.

但使用太陽能板供電.會因為雲遮陰影照射強度不穩定.

使得電壓及電流不穩不足而使手機出現錯誤甚至不充的情形.

因此需要穩壓板降壓板.而降壓板充電板穩壓板種類很多種.

依輸入輸出電壓電流等等需求選擇搭配.有可調電壓或不可調的.

而整流二極體已都焊在板上.或是由晶片控制單向的電流流向.

示範使用18650電壓在3.7-4.2v的範圍.

使用4V太陽能板無雲太陽直照可達4.9v

選用簡單的不可調壓充電板.可輸入5v再輸出4.2v給電池.

這種充電板本身已都有防止逆向.因此可不用再裝整流二極體.

充電端焊上電池盒.裝上電池量測回流電壓.

可將太陽能板直接焊線到充電端的外接孔.

也可將太陽能板焊上USB母孔線.

再搭配一般手機充電線.置於太陽下即可開始為電池充電.

當電池充飽後再裝上移動電源給手機充電.

小太陽能板發電功率W瓦數低.

為了加快充電時間提高電流可並接多片.

一樣焊上了USB母孔線加焊了整流二極體.

這次搭配行動充模塊.即可充電又可放電到手機.

充好電池可直接插上燈片或接線到手機.

手機電池容量越來越大.充電時間就會變的很久.

所以運用在應急是比較洽當的.

而且要注意電池在太陽下曬的高溫是危險的.

https://www.ee543.com


把時間花在使自己活的更好.而不是花時間使別人過的不好

2023年8月7日 星期一

電容式近接開關感應開關

電容式近接開關 接近開關 感應開關


近接開關的感應方式很多種,

電容式可感應非金屬散料桶料飼料五穀..等

也有很多種尺寸或可調距感應.

也有分2線3線4線式等.圖

此例3線.棕正.藍負.黑輸出.大多可輸入DC6V~36V.

這裡棕和藍接電源輸入DC12V.黑色為輸出.

輸出訊號種類有NPN/PNP/NO/NC各接法不同.

此例用的是NPN-NO.輸出的訊號為300mA.

若接小燈小蜂鳴可直接驅動或PLC單片機.

或是透過小繼電器再到大於300mA設備電機或電磁接觸器.

NPN的黑線在有感應時輸出低電訊號.圖

範例接蜂鳴器.所以蜂鳴器另一腳要輸入+12.

因為要測試2個不同電容近接感應器.

所以2個蜂鳴器共4接腳.分別接入正負電力.

可搭配支架安裝.即可通電測試.可用手接近感應測試.

分別各種不同材質測試金屬.木頭.玻璃.紙板.塑膠.

其中紙板紙張塑膠板因厚度不同而有無感應.

量測散料桶料飼料五穀時需要用到桶箱裝.

要隔著塑膠料箱來作內裝散料的感應.

因此要注意塑膠桶箱不可太厚.

並依各塑膠桶箱去調整安裝距離.

才能正確感測桶箱內的散料.

依據被測物的密度厚度移動速度等會有不同的結果.

搭配繼電器PLC控制器單片機等等.再控制電機燈號等等使用.




https://www.ee543.com



2023年5月24日 星期三

微型觸控按鍵模塊/復位改自鎖

 微型觸控按鍵模塊/復位改自鎖


先作一個簡單的電路,

電池是4v,燈珠2v-3v,串接220歐電阻,

搭配一個復位點動的開關,

按下就亮燈,放手就熄燈,圖

將手壓的復位按鍵改為觸控按鍵,

把模塊上腳位GND/IO/Vcc先焊上線,圖

將焊好線的觸控板和手動按鍵更換,

因為板上內定是輸出高電平,

所以將輸出腳接在燈正極28mA,.圖

此時手指觸碰或靠近就會亮燈,

手指離開燈就熄滅,

接近就會有反應不一定要碰到,

再來依表格跳腳將B點焊成短路,

設定為A不焊+B焊短路=自鎖高電輸出,圖

再接回電路,即變成手觸控持續自鎖亮燈,

再一次手觸控就熄燈的連續自鎖模式,

再將觸控板焊上外接線作串接的開路斷路,圖

再接上原本復位點動開關的接腳,

則可壓按原本的復位開關變成自鎖連續開關,圖

有些微動開關只有復位型沒有自鎖型,

若需要改成自鎖訊號就可搭配此模塊轉換訊號,圖


注意輸出最大28mA.超過電流要另搭配三極管及繼電器模塊等驅動

https://www.ee543.com


2023年4月24日 星期一

Arduino學習.溫度晶片DS18B20

 Arduino學習.溫度晶片DS18B20


UNO板

溫度晶片DS18B20

4.7k或1k~2.7k電阻


工作電壓=3.0v~5.5v

工作電流=1mA

量測範圍溫度=-55度C~+125度C

誤差範圍=+-0.5度C(-10~85度C時)

反應時間<750ms

腳位印字面左至右=Gnd/D-out/+V

單線1-Wire協議資料輸出

晶片外觀有TO92直插也有防水封裝帶線的

圖溫度晶片D18B20 


使用時在輸出腳加上4.7k電阻接上5v電源,

或是搭配3.3v接1K~2.7K電阻,

不加會如何,最後再測試,圖 



打開Arduino軟體後要先安裝2個外部資料庫,

DallasTemperature及onewire,

先到工具-管理程式庫-搜尋DS18B20

需要的是DallasTemperature

點擊安裝時會跳出是否安裝onewire

可直接安裝或手動搜尋安裝

圖例已經安裝了所以是灰格.圖 


安裝好外部程式後可直接開啟

檔案-範例-OneWire-DS18x20_Temperature 圖 


範例程式就不貼上了,可看到程式行標註

OneWire ds(10); //on pin10 (4.7K resistor is necessary)

所以要將資料腳插在UNO的P10腳位加4.7k電阻接5v電源,

然後將程式上傳到UNO板上,打開監控視窗,圖


開始回傳溫度感應器的數據,

這些資料需要轉換成看的懂的數值,

關閉監控視窗,另開啟

檔案-範例-DallasTemperature-simple 圖 


可看到說明標註

// Data wire is plugged into port 2 on the Arduino

#define ONE_WIRE_BUS 2

所以需將資料腳插在UNO的P2腳位

然後將程式上傳到UNO板上,打開監控視窗,

即可看到轉換資料後顯示的攝式C溫度約27.8度C, 圖 

將程式簡編後上傳


//先安裝外掛程式庫

#include <OneWire.h>

#include <DallasTemperature.h>


//資料輸入腳位P2

#define ONE_WIRE_BUS 2

OneWire oneWire(ONE_WIRE_BUS);

DallasTemperature sensors(&oneWire);


void setup(void)

{

  Serial.begin(9600);

  sensors.begin();

}


void loop(void)

  sensors.requestTemperatures(); 

  float tempC = sensors.getTempCByIndex(0);

    Serial.print(tempC);

    Serial.println("C");

}

圖 


讀取顯示溫度C,可自行透過數據轉換顯示成華式F,

如要改變顯示頻率則需至外掛程式修改,

最後測式將資料腳的電力及電阻移除,結果是無資料的,

至於不加電阻直接供電,推測是會燒壞晶片的.


相關資料參考

http://www.pjrc.com/teensy/td_libs_OneWire.html

https://github.com/milesburton/Arduino-Temperature-Control-Library

https://www.milesburton.com/w/index.php/Dallas_Temperature_Control_Library