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


2020年6月12日 星期五

水位控制~單浮球排水時間繼電器

水位控制~單浮球排水時間繼電器

水位控制的接法相當多種,
需依排水或入水及各設備電壓等搭配,
此篇使用單浮球的水位開關搭配時間繼電器,
來控制當水箱滿水時的排水,

以下使用材料
單浮球的水位開關1支
斷電延時的時間繼電器加底座1組
DC12V抽水馬達1個
DC12v電源器1個
線材數條
電源指示燈和馬達指示燈(可不接
圖↓

 
浮球水位開關桿內有磁簧開關,
外部浮球內置磁鐵,
當浮球上下移動帶動磁鐵,
而磁簧開關受到磁鐵影響而通路或斷路,
2線的水位開關視為一進一出的開關接線,
滿水要排水調整為NO,浮球上升時為NC通路,
圖↓水位浮球說明.jpg

繼電器種類多,此處使用單閘斷電延時繼電器,
動作順序=通電-跳閘-斷電-計時-跳閘復歸,
可參考另篇斷電延時繼電器使用方式,
https://ee543.blogspot.com/2020/05/off-delay-timer-relay.html
圖↓斷延繼電圓8腳3.jpg

DC12V電源器接至繼電器,並進火線給水位開關,
當水位觸發火線出給繼電器啟動,
繼電器跳閘啟動馬達,開始抽水,
水位下降開關斷路,繼電器開始計時,
此時間需依水箱大小及馬達排水量來調整運轉時間,
直到設訂時間到,繼電器歸位,馬達斷電停止結束,
圖↓水位圓八接線
單水計時.jpg

影片↓


以上接線是一電源線入水位開關再一線出到繼電器,,
若是接控制器,大多是電源正負入控制器,再2線出到水位開關,則務必接上電阻,,
如不接,該2線會發出正負電力,導致內部電磁感應吸合不放,
可電表量測控制器2接線,就會發現是有電壓電流的,



https://www.ee543.com



2020年5月14日 星期四

時間繼電器~斷電延時繼電器~OFF Delay Timer Relay

時間繼電器~斷電延時繼電器
OFF Delay Timer Relay

和一般瞬時繼電器不同,非通電就跳閘,
時間繼電器有分通電計時和斷電計時,
此篇說明斷電延時的使用,
圖↓斷延繼電圓8腳2.jpg

此款為1閘NO/NC,帶復位歸零腳,
動作順序=通電-跳閘-斷電-計時-跳閘復歸,
圖↓斷延繼電圓8腳3.jpg

當2+7腳位驅動電源通電(注意是否分正負),
同時跳閘,此時並不計時,
等待驅動電源斷電,才開始計時,閘位尚不動作,
直到設定時間到,跳閘復歸,
有帶復位歸零腳位的,可在未到時間短路立即歸零,

以下影片範例搭配復位開關,
可改接感應模塊或水位開關等訊號,
依訊號搭配控制端線圈電壓,驅動電流100mA,
並依需啟動設備時間挑選繼電器,
綠燈表示開關訊號控制端,
紅燈表示被控端設備啟動及停止,
圖↓斷延繼電配線例.jpg
影片↓

控制排水的運用,
當水位上升觸發浮球訊號,即啟動繼電器線圈,
使馬達開始排水,慢慢排水後浮球下降,訊號斷開,
計時器開始計時,依據馬達排水及水桶量,調整排水時間,
待時間到,排水泵斷電停止,影片↓


或是車道進出感應器觸發時閃燈警示幾秒時間


https://www.ee543.com