瞬停を少し模擬したくて。。
DC25Vで10Aくらい流れるところで、瞬停(数msec~数十msec)を再現・模擬したくて。。FETかなにかでやろうかな?って思っていたんですが。。ちと怖く。。いいモジュールないかな?って探していたら。。こういうのがありました。リレーです。
買う前に。。 動くのか?をネットで確認して。。
How to use a popular 1 channel webstore relay on 3V3 / Re-inverting an inverting relay
https://maker.pro/everything-esp/projects/how-to-control-a-relay-module-with-esp32
http://marchan.e5.valueserver.jp/cabin/comp/jbox/arc214/doc21406.html
https://www.denshi.club/parts/2017/02/onoff.html
ESP32の3.3V(DC+とDC-)でも動きそうという情報と。。ONとCOM間は、信号のLOWでリレーONって書いてあるけど。。どうも、ジャンパーで信号HIGHでONもできるみたいで。。どっちなんだろうな?と。。
説明図は。。
これについているリレーは、JQC-3FF-S-Zで、データシートはこれっぽい。
https://datasheetspdf.com/pdf-file/1480970/TONGLING/JQC-3FF-S-Z/1
DCの場合 28V 10A は大丈夫のよう。それ以下で使う分には壊れなさそうです。
で。。リレーなので、msecで動くかな?というのを試してみました。
テストのスケッチ
”+”文字がデリミタになってて、1+とか100+とか1000+とか+を除いて4文字までPCからシリアルインプットで入れれます。 入れた数字のmsec分だけOFFになるっていう感じです。もともとON・OFF繰り返すようになっていたので、あんまりいいスケッチじゃないけど(笑)
int relay_pin = 18; void setup() { // put your setup code here, to run once: Serial.begin (57600); pinMode (relay_pin, OUTPUT); Serial.print("HIGH"); Serial.print ("Connecting to "); } void loop() { // put your main code here, to run repeatedly: String line; int line_len; long led_duty; led_duty=0; while(1){ line = Serial.readStringUntil('+'); line_len = line.length(); if ((line_len >= 1) && (line_len <= 4)) { led_duty = line.toInt(); Serial.print("LED Duty: "); Serial.println(led_duty); } digitalWrite(relay_pin, LOW); Serial.println(led_duty); delay(led_duty); digitalWrite(relay_pin, HIGH); Serial.println("HIGH"); delay(1000); } }
ESP32で、
DC+ 3V3
DC- GND
IN 18
仮に、制御されるリレー側は、
COM GND
ON 5V
なのですが、ONの上に LEDと 470Ω が入っています。
こんな雑な配線w
実験
で。。どれくらいまで反応するか? 基本的に電流によっても違うでしょうし。。電圧によっても違いそうですが。。5V 10mAくらいでテスト
1msec 2msecはカチっと言ってるけど、OFFになりませんでした。。
3+を入力すると。。3msecっぽい
5msecを入力すると。。7.5mecくらい。
10+と入力すると、17.5msecくらいな感じ。
30+と入力すると。。38msecくらいな感じ。。
あまり正確とはいえないけど。。もともと ESP32のdelayでやってるだけだし。。こんなもんか? それほどチャタリングっぽいのも出てないので、優秀ですね。。
まぁ、動くということはわかったので。。ちょっと怖いけど。。数A流してみるかな?
コメントを残していただけるとありがたいです