2022.3.30
適当に昇圧チョッパの解説レポートのようなものを書いた(2週間前)
書いたはいいけど感覚で書いてるので自信がない()
在学中なわけだし一旦詳しそうな教員に見せて評価もらってから公開することにしようかと。一応動作はしてるし解説にはなってるのかな…?ひとまず動作確認には500μH程度で1Aぐらい流せるインダクタが必要なので、苦労して何とか作ろうと思います…多分これがコイルガンの充電回路になる?かな。
それとそれっぽい電流計を自作したのでここに貼っておこう。http
s://twitter.com/anpea2107/status/1506962300153991178?s=20&t=Os-azIH0T_IX6jzxaDx4NQ
動いた…
— Anpea2107 (@anpea2107) 2022年3月24日
シリアルモニタに吐き出させる電流計 pic.twitter.com/VzqxDxmIYu
コードは以下の通り。---で挟んでる部分。
---
#define shunt 1/*analogpin*/
#define Resistor 47/*resistor size*/
#define s_v 4.834/*serial voltage,4950/1024*/
int current = 0;
void setup(){
Serial.begin(9600);
}
void loop(){
current = analogRead(shunt)*s_v/Resistor;
Serial.print(current);
Serial.println(" ");
delay(200);
}
---
ブログよくわかってないのでコードが読みにくいかもしれないしもっといいやり方あるかもしれないが勘弁してくれ。
これで動画内と同様の動作をする。ただし、47Ωの抵抗の片側が接地されていて、47Ωの抵抗のもう一方にアナログピンを接続した場合のコードなので、47Ωのとき以外はResistorの数値を任意の使用する抵抗の値に変更する必要がある。
Cベースなのに#includeが必要ないのはArduinoIDEの仕様。stdio.hとかは標準で入ってることにされる。shuntは使用する測定用アナログピンの番号。s_vはArduinoのADCの仕様上、1024段階で結果が返されるので、その一段階あたりの電圧をmVで表記したもの。動作中のシリアルモニタに表示される数値が、実際に流れている電流の数値(単位:mA)となる。
動作原理は単純で、ADCが抵抗の両端の電位差を返すので、抵抗値で割った。ただそれだけ。オームの法則だね。これはあくまで直流用なので、交流には対応していないというか正確な数字が返ってこないとおもう。また、この抵抗値と抵抗の両端の電位差を基に計算するので、頑張ればμAレンジまでギリ測定可能なはず……オペアンプのオフセット電圧分だけcurrentの数値から引くように書き換えて、オペアンプで信号増幅掛けてやれば一応出来る…はず。しかし、delayしてるので200msに一回、それも計測に100us近くかかるらしいので、交流にはとことん向いていない。抵抗の精密測定ぐらいならなんとか?
以上、適当な電流計と昇圧チョッパのレポートを提出してみようというお話でした。ではまた。
h
tps://twitter.com/anpea2107/status/1506962300153991178?s=20&t=Os-azIH0T_IX6jzxaDx4NQ