2021年3月29日 星期一

水位控制~雙浮球+繼電器14腳

 水位控制~雙浮球+繼電器14腳






先行了解浮球水位開關的運作原理.

桿內裝有磁簧開關.浮球裝有磁鐵.

當磁鐵靠近磁簧使電路閉合.

磁鐵移開磁簧就會使電路斷路.

2線的水位開關視為一進一出的開關接線,

而磁簧僅能承受0.5A以下電流.似手機的小開關.

因此需要搭配繼電器PLC單片機控制器等等使用.

由於內置磁簧位置是固定的.因此浮球超過C環是無效的.

取下C環反轉浮球可調整電路為NO或NC.以搭配排水或入水需求.

1球2線所以雙球會有4條線.

使用前先用電表量測通路及調整NO/NC.搭配做排水還是入水.

若要入水.則在低時為NC通路作啟動.

若要排水.則在低時為NO斷路作停機.

水位控制的接法相當多種,

此處使用2個浮球的水位開關搭配一個14腳的瞬時繼電器,

以下使用材料

DC12v電源器1個

DC12V14腳繼電器加底座1組

單浮球的水位開關2支

DC12V抽水馬達1個

線材數條

開關和指示燈和警報器(可不接


此例控制端繼電器線圈及被控端水泵燈號等都是12v.

因此搭配同1個12v的電源.

1個浮球有2條線.上下球各任取1線作共線COM.接繼電器10腳到電源負極.

電源正線到繼電器14腳短路11腳.

注意.作入水2球調整低位NC.

上球另一線到繼電器5腳.

下球另一線到繼電器13腳及9腳.

若要排水則2球調整低位NO.

下球另一線到繼電器5腳.

上球另一線到繼電器13腳及9腳.

入水排水上下球接線和NO/NC設定是相反的.

繼電器6和7腳再出線到警報器和水泵.如圖↓水位雙入水接線圖




入水動作順序

水箱為空>控制端送電>2水位開關低NC>繼電器567通路>水泵運作入水>如圖↓上下通



水位推升下浮球NO斷路>但繼電器5+9為NC>水泵持續運作>如圖↓先通後斷


持續入水至上浮球NO>繼電器復歸NO>水泵停止.如圖↓上下斷



當有水排出至上浮球下降至NC>但繼電器13無負電源無法驅動>如圖↓先斷後通



需持續排水到下浮球下降至NC通路>繼電器567通路>水泵再次運作入水>


如要做排水則上下球接線5和9為及NO/NC相反.如圖↓水位雙排水接線圖




影片為排水影片↓


水位桿的NO/NC應該是要說成設定0和1,因為無浮球時的狀態只有NO的,

水位控制~單浮球+繼電器

https://www.ee543.com



2021年3月21日 星期日

水位控制~單浮球+繼電器

 水位控制~單浮球+繼電器

先行了解浮球水位開關的運作原理.

桿內裝有磁簧開關.浮球裝有磁鐵.

當磁鐵靠近磁簧使電路閉合.

磁鐵移開磁簧就會使電路斷路.

2線的水位開關視為一進一出的開關接線,

而磁簧僅能承受0.5A以下電流.似手機的小開關.

因此需要搭配繼電器PLC單片機控制器等等使用.

由於磁簧位置是固定的.因此浮球超過C環是無效的.

取下C環反轉浮球可調整電路為NO或NC.

以搭配排水或入水需求.


水位控制的接法相當多種,

此處使用單浮球的水位開關搭配一般瞬時繼電器,

由於單浮球的上下行程僅約7mm左右.

因此水泵啟動的時間很短.若是水位變化大.

就會打打停停.電機啟動更耗電.因此不推薦,

此篇只是說明浮球水位開關的基礎使用運作原理.

建議使用雙浮球拉大行程或其它時間繼電器控制等等方式.

在正式比賽考証照就會搭配PLC使用.


以下使用材料

DC12v電源器1個

DC12V繼電器加底座1組

單浮球的水位開關1支

DC12V抽水馬達1個

線材數條

指示燈和警報器(可不接

圖↓


















此例控制端繼電器線圈及被控端水泵燈號等都是12v.

因此搭配同1個12v的電源.

電源正負2線接到電源指示燈後.正線接繼電器座.

負極接到水位開關的任一線.水位開關的另一線接繼電器座.

形成一般開關的迴路.DC繼電器有分正負.注意正負接線腳.

電源正負另接出任1線到被控端的接繼電器座腳.

繼電器NO閘腳再出線到警報器再到水泵.

另一線先串警報器.再到水泵.如圖↓




動作順序

當控制端送電>指示燈亮>低水位開關NO>等待入水>

高水位推升浮球NC>繼電器運作NC>警報器和水泵同時運作.

排水至低水位開關NO>繼電器復歸NO>警報器和水泵同時停止.

循環等待入水.此時若持續入水,馬達就會打打停停,耗電又易固障,故不建議




由於浮球行程僅約5mm左右.因此馬達打打停停.電機啟動更耗電.

因此單浮球水位開關適合觸發警報器.來作手動入水或排水.

或搭配時間繼電器或PLC單片機程式來控制幫浦.

影片↓


相關

繼電器RELAY

時間繼電器~斷電延時繼電器


https://www.ee543.com



2021年3月1日 星期一

基本電學-電壓電流功率

 基本電學-電壓電流功率


盡量以實作非理論來寫教文,但有些東西是看不到摸不著的,

以下名稱單位及公式,先了解,再實作就能知道如何正確搭配電源,

電壓V單位伏特V

電流I單位安培A

功率P單位瓦特W

P=I*V或是V*A=W


電源可供應的功率瓦數應大於設備的電力需求,

但是供應電壓需在設備的耐壓範圍內,

也就是電壓應一致,電流需大於設備或一致,


例如,家用電器,目前家庭用電壓多是AC110V,

日光燈,傳統鎢絲燈泡,到電視機洗衣機電冰箱,

若是將此類110V的設備輸入220V的電源,則會直接燒毀,

反之將國外220v電器帶回台灣插上110v的電力,則無法啟動,

只有標示110~220v有內建變壓器的,才能在110或220電壓通用,

DC電力的電壓及設備或是電池供電也是一樣,

*但在充電的情形下則需涓流充電,另說明,

所以電器設備在使用前務必先清楚了解電壓,以免發生意外,圖


電源供應電流值A,需大於設備的需求或一致,

因P=I*V,也就是W=A*V,

所以在電壓條件相同下,供電電流大,等同供電瓦數大,

當供應電流瓦數低於設備需求則無法啟動設備,

大多數的AC電器多只標示電壓耗電功率瓦數,

當供應電流過大,設備並不會因此燒毀,但電壓過大就會直接燒毀,

家用電力直通電力公司,透過保險線路大多可達到20A以上,

所以供電設備會標示電流A或功率瓦數,來搭配設備需求,

圖例20A開關接上2個1200w的電熱氣,

1200w/110v=10.9A*2台=22A,高過20A保險就會跳電或燒壞電源器,圖


電力教學經常用看的到的水來比喻,

一樣大的水桶放在不同樓層高度,

會造成不同的高低差,即為不同電壓,

而水管不同大小的水流量即為電流,

因此若要通過較大的電流則需搭配較粗的電線,

火災的發生經常是疏忽搭配正確的電線造成,另篇說明,圖






測試影片

同設備接不同電力,

以DC12v100w馬達測試搭配DC5v電源,

不用試也知道是無法啟動的,

以DC12v5A60W電源搭配測試,只轉轉停停無法順利轉動,

最後以12v100w電源正確啟動,


運用在太陽能板時也是一樣,

需先知道設備的電力需求,再提供足夠的的電源,

這次反著測試,同電源接不同設備,

先有一片太陽能板測得供電電壓電流僅1v0.1A約0.1W,

取一般130馬達,由於供電瓦數及電壓低於設備故無法轉動,

再取300低耗能馬達,僅達轉動最低需求,因此可轉但不快,

再試飛行器614馬達高效能,轉動順暢,



經常遇到客戶LED燈不亮的搭配問題,

如不同的電池所可提供的電壓電流,

來搭配不同長度的LED燈帶,

此類不亮燈或是亮度不足,

都是因為提供電源的電壓或電流過低問題,


另補充家用電費以時瓦計算,1度電=1KWh,

即耗電1000w的設備開著用1小時的耗電,

而機械動力電機1HP馬力=746W瓦特


插撥~有遇上零件印WVAC的,

WV=working voltage,工作電壓



2020年12月21日 星期一

Arduino MEGA2560驅動軟硬體

 Arduino MEGA2560驅動軟硬體


UNO腳位不夠用?

介紹另一張更大的板子MEGA,尺寸110*54*15mm

圖↓各種mega



使用方口USB連接電腦或5v電源,

圓5.5mm電源供應接口,DC7~12v,建議9v

數位接口=D54個,含15個PWM

模擬接口=A16個,也可作數位腳

I/O輸出電流=20mA

3.3v輸出電流=50mA

主晶片=ATmega2560


D0和D1是作串列通訊用,如非必要應避免使用,

D13則連接內建的LED燈號,

D2~D13+D44~D46腳位,共15位PWM輸出入值0~255,

A0~A15為類比腳位,數值0~1023,

A0~A15也可作為數位腳D54~D69

ICSP主從傳輸接腳,

AREF電壓輸入參考,

RESET低電位時可重新開機,

輸出電壓3.3v及5v


詳細可查看官方網站

https://www.arduino.cc/en/pmwiki.php?n=Main/arduinoBoardMega2560

https://www.arduino.cc/en/Hacking/PinMapping2560

外觀及腳位參考照片,圖↓



使用和UNO差異不大,一樣先在電腦上安裝Arduino IDE,

在arduino官網選擇適合系統的版本安裝,

https://www.arduino.cc/en/software

Arduino秉持開放源,故市場有很多不同板本,

主要差別在通訊晶片ATmega8U2/16U2或是CH340,

Win10正常情形下連接機板調整序列埠及版本就可上傳使用,圖↓



但隨著Windows版本及Arduino IDE版本,

可能造成無法識別的情形,造成無法正確驅動,則需手動安裝更新,

Win7+CH340晶片,參考下網頁說明及驅動載點下載,

https://www.arduined.eu/ch340g-converter-windows-7-driver-download/

http://www.arduined.eu/files/CH341SER.zip

https://drive.google.com/open?id=1Dg-KaLIeWyxn_KSyXmhnUxWYggFAOrr7

下載解壓執行setup,出現以下畫面,點Install後自動安裝,圖↓



可另參考之前的其他文章

https://ee543.blogspot.com/2016/01/arduino010unoardublock.html

安裝好驅動及軟硬體後,重新插拔及執行,調整序列埠及版本,

建議連接於主機板後方的USB,不要接前面板口,

建議先上傳空程式測試,若無誤再來上傳Pin13內建閃燈測試,

https://ee543.blogspot.com/2016/01/arduino110led.html

打開內建範例>Basics>Blink後上傳,

機板上的內建燈會開始閃爍,就可開始其他的使用了,圖↓




來試試其他板沒有的D46腳位,測試PWM功能,

LED燈串接220或330電阻,搭配內建範例呼吸燈,

打開Arduino內建範例,檔案>範例>Basics>Fade

修改程式LED腳位為46後上傳,或參考

http://ee543.blogspot.com/2016/01/arduino150.html

圖↓




2020年10月11日 星期日

DHT11溫度濕度模塊

 DHT11溫度濕度模塊

此模塊搭配Arduino使用,需先安裝外部程式libraries
方式1,開啟Arduino軟體程式IDE,
在上列點選-草稿碼>匯入>管理程式庫,
輸入DHT11,選擇安裝後離開重新執行Arduino圖↓


 

方式2,到以下連結網站下載ZIP,
https://github.com/adafruit/DHT-sensor-library
解壓後將整個目錄安裝到你的Arduino位置,
例如Arduino\libraries\DHT_sensor_library圖↓



安裝後建議重新執行Arduino IDE,
在工具列檔案>範例>會出現一個DHT sensor>DHTtester
打開內建範例後查看程式,圖↓

 
注意此段說明~依DHT的版本選用
// Uncomment whatever type you're using!
//#define DHTTYPE DHT11   // DHT 11
#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)
我們使用DHT11,所以只留下
#define DHTTYPE DHT11
其他版本及備註刪除,成為以下碼,圖↓


#include "DHT.h"
#define DHTPIN 2
#define DHTTYPE DHT11   // 只留DHT 11
DHT dht(DHTPIN, DHTTYPE);

void setup() {
  Serial.begin(9600);
  Serial.println("DHTxx test!");
  dht.begin();
}

void loop() {
  delay(2000);
  float h = dht.readHumidity();
  float t = dht.readTemperature();
  float f = dht.readTemperature(true);
  if (isnan(h) || isnan(t) || isnan(f)) {
    Serial.println("Failed to read from DHT sensor!");
    return;
  }

  float hif = dht.computeHeatIndex(f, h);
  float hic = dht.computeHeatIndex(t, h, false);

  Serial.print("Humidity: ");
  Serial.print(h);
  Serial.print(" %\t");
  Serial.print("Temperature: ");
  Serial.print(t);
  Serial.print(" *C ");
  Serial.print(f);
  Serial.print(" *F\t");
  Serial.print("Heat index: ");
  Serial.print(hic);
  Serial.print(" *C ");
  Serial.print(hif);
  Serial.println(" *F");
}



選擇好Arduino版本及通訊阜上傳到機板,
習慣先離線斷電再裝硬體,
將DHT11模塊裝上硬體,僅3腳,
在程式裡可看到輸入端為p2接模塊OUT,
正負輸入電力3.3~5v,圖↓


連結電腦執行Arduino IDE,
並打開監控窗,確認鮑率是相符的,
模塊就會開始回傳資料,
濕度++溫度++及體感溫度,圖↓



如需要外接螢幕可參考該相關教文搭配使用,
https://ee543.blogspot.com/2016/05/arduino-uno262iici2c.html


https://www.ee543.com







2020年10月6日 星期二

馬達啟動電容~電風扇換電容換保險絲

馬達啟動電容~電風扇換電容換保險絲

一般的AC電風扇用一段時間後會越轉越慢,
除了綿屑頭髮沒上油等等問題,
原因多都是電容老化,用了一段時間就要更換,

馬達啟動電容分容量,
標示240v是指240v以下,或標示480v以下,
都可在AC110v~240v內使用,
所以只要注意容量,
家用風扇多用3uF,吊扇5uF,
排風扇工業扇等等都差不多的換法,
盡量是換和原本一樣的容量,
若要加大不要超過20%,
過大容易燒壞馬達線圈,
過小則轉速慢或轉不動,

電容安裝的位置多在開關附近,
底座或是立桿處,不需拆網拆葉片,
2台風扇圖↓


查看原本的容量2台都是3uF,AC電力不分腳位,
因此找換一樣容量的焊下換上就行,


如有如圖大小及安裝位置的問題就要依狀況處理了,圖↓


換好電容試轉沒問題就可裝回外殼,完成結束...

若是完全不動,檢查開關電源及保險絲,
綿絮頭髮等等卡在轉軸,馬達溫度過高後燒斷保險絲,
此狀況要拆下後殼更換溫度保險絲,
溫度保險絲有分電流數和溫度,
一般只要不要差太多都可替換
圖↓


將手邊的風扇殼拆下,這應該不難,
遇到的問題多是搖頭的控制鍵拆不下,
注意看照片,搖頭鍵是有個倒勾卡榫,
找個尖的工具挑起卡住的地方就能取下,
圖↓
 
把後殼及鐵網拆光,就可看到馬達線圈,
在電路接點處有個黑色的熱縮管保護著,
把該保護熱縮管剪去就可看到保險絲,圖↓

 
因為這風扇保險沒斷,所以就不繼續拆了,
若要更換方便可拆下馬達架,
焊下保險絲換上即可,
順便把綿屑頭髮清理,並上油,
老舊風扇就可繼續使用了,
不要只因風扇才幾百元,就當垃圾回收去,
保護地球環境,需要大家一起努力,

另台風扇的更換↓





https://www.ee543.com

2020年9月16日 星期三

測試馬達轉速與繞線關係

測試馬達轉速與繞線關係
 
此不說明馬達轉動的原理,但需知道電力與馬達的關係,
右手安培定律,電流通過方向,決定磁場方向,決定馬達轉動方向,
電流由正極流向負極,即右手姆指向負,電流朝4手指方向,
將右手的大拇指指向電流I方向,再將四根手指握緊電線,
則彎曲的方向決定磁場B的方向, 資料圖片來源~維基百科
https://zh.wikipedia.org/wiki/%E5%AE%89%E5%9F%B9%E5%AE%9A%E5%BE%8B
圖↓



DC有刷馬達只要改變正負電流的輸入端,就可改變馬達轉動的方向,
相同電力條件下,影響馬達效能的,就是馬達的繞線,
繞圈數,材料,粗細,方式等,另外就是磁鐵的磁性強度及軸承等,
線圈繞在轉子上,定子在線圈外無直接接觸,
轉子銅線固定在轉軸上,轉軸一端由碳刷電刷接過電,
圖↓


轉速越高一般來說力矩越低,就像汽車低速爬坡檔有力但轉速慢,
而跑車高速轉但無法載重爬坡力低,

繞線越短電流通速度越快,馬達轉速越快,扭力越低,耗電越高,
試想將電池一條電線短路,會耗盡電池電力並電線發燙燒斷,

線圈越長電流越慢,轉速越慢,越省電,
繞線越粗電阻越低,通過電流越大,產生磁性就越強,轉速越快
在有限的繞線範圍內,要高轉速又要高扭力還要低耗電,
就要改善定子的磁力,及電刷和軸承等等條件,
圖↓

以下測試拆解普遍使用在玩具車的130馬達,
外觀尺寸都相同,內部和外觀顏色無關,
圖↓

先以18650電池4.3v測試啟動及空轉及堵轉電流,
就可明顯知道差異,
啟動瞬間電流大,空轉時最低,堵轉為受力致馬達停止,
圖↓

馬達透過計數設備,過48比齒輪盒測2葉片計數,
圖↓

各馬達測試電壓電流轉速完後拆殼比較
圖↓
 
電科同學可找翻課本資料公式,
課本是專人審核的,網路資料很多不正確,
圖↓
w=2Pi*RPM/60,
角速率=2*3.14*轉速/60秒

以及另一公式
T=P*E/w
轉矩=功率*效能/角速率

由於無法取得馬達效能及輸出功率,以下帶耗電瓦數計算,
則可簡化公式為
轉矩N.m=(電流A*電壓V)/(0.105*轉速RPM)

將各馬達測4.2v過48齒輪比時數據記錄並計算
G款=0.17A,0.7W,12000轉,0.00055N.m
D款=1A,4.2w,38400轉,0.00104N.m
W款=0.3A,1.26w,18000轉,0.00069N.m
B款=0.12A,0.5w,11000轉,0.00043N.m
Y款=0.02A,0.08w,2460轉,0.00031N.m

得轉矩單位N.m,可轉換成公制Kgf.cm,參考馬達廠的自動轉換程式
https://www.orientalmotor.com.tw/om/support_tool_tw/torque/

將得到的轉矩/耗電瓦數,計算出每瓦耗電的效率比較
G款=0.0008=繞線徑0.16mm,轉子16片,定子磁力強
D款=0.00025=繞線徑0.16mm,轉子10片,定子磁力弱
W款=0.00039=繞線徑0.16mm,轉子16片,定子磁力中
B款=0.00087=繞線徑0.10mm,轉子16片,定子磁力中
Y款=0.0039=繞線徑0.10mm,轉子16片,定子磁力強

可看出每瓦效能,繞線細長+強磁的效率是最高的,
一般來說售價也最高,
而繞線粗短是最快最耗電效率是最低的,
在應用上,若是要接太陽能板低耗能用,
則需選擇細長線的,低壓低流,
若是要逆向作發電的也是要選細長線的,
高壓低流低速,逆向達轉速時才發出低壓低流,
若是接電池不考慮耗電要快轉的可選粗短線,
要快轉又要載重車用就要粗長線,

影片↓

另篇相關參考
TT馬達測試器 轉速功率轉矩
https://ee543.blogspot.com/2019/12/tt.html
將原本的UNO單片機,改用Nano,
程式是一樣的,稍作修改,顯示在外接螢幕上,
i2c接腳SDA=A4,,SCL=A5,參考另篇螢幕轉接板,
https://ee543.blogspot.com/search?q=i2c
在程式介面要記得選擇到nano在能正常上傳,
圖↓


#include <SCoop.h>
bool BTS= false ;
bool BTL= false ;
int count = 0 ;

#include <Wire.h>
#include <LiquidCrystal_I2C.h> //務必先安裝資料庫,SDA=A4,SCL=A5
LiquidCrystal_I2C lcd(0x3F, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE); //注意0x3F螢幕位址

void setup()
{
  pinMode( 2 , INPUT); //P2入光電計數器訊號
  Serial.begin(38400);
  mySCoop.start();
  pinMode( 7 , OUTPUT); //P7出高電繼電器控制

 lcd.begin(16, 2); //初始化16字元2行
  for(int i = 0; i < 2; i++) {//閃爍後亮背光
    lcd.backlight();
    delay(200);
    lcd.noBacklight();
    delay(200);
  }
  lcd.backlight();
  lcd.setCursor(0, 0); //第一行顯示
  lcd.print("0");
}

void loop()
{
  BTS = digitalRead(2) ;
  if (( ( BTS ) != (BTL ) ))
  {
    if (( (BTS ) == ( HIGH ) ))
    {
      count = (count + 1 ) ;
      Serial.print(count);
      Serial.println();
    }
  }
 BTL =BTS ;
  delay( 3 );
}

defineTaskLoop(scoopTask2)
{
  digitalWrite( 7 , LOW );
  delay( 3000 );
  digitalWrite( 7 , HIGH );
  delay( 60000 );
  digitalWrite( 7 , LOW );
  lcd.clear();
  lcd.print(count);
  delay( 7000 );
  lcd.noBacklight();
  delay(200);
  lcd.backlight();
  count = 0 ;
  lcd.clear();
  lcd.print("0");
}




https://www.ee543.com