Koodu Arduino ati Fidio fun Modulu Sensa Foliteji
Nínú ẹ̀kọ́ yìí, a óò ṣàwárí bí a ṣe le lo ẹ̀rọ̀ amúgbáwọ́n folti (voltage sensor module) pẹ̀lú Arduino. Iṣẹ́ yìí jẹ́ kí o lè díwọ̀n folti tí ń wọlé kí o sì fi hàn lórí ẹ̀rọ̀ ìṣàfihàn (serial monitor), tí ó rọrùn ju lílo àwọn resistor àfikún. Ní ìparí ẹ̀kọ́ yìí, o óò ní ètò tí ó ṣiṣẹ́ tí ó ń ka àwọn ipele folti déédé.

Bí o ṣe ń tẹ̀lé, o óò ní òye nípa àwọn àsopọ̀ ẹ̀rọ (hardware connections) àti kóòdù tí a nílò fún iṣẹ́ yìí. O lè wo fídíò tí ó bá mu ní (nínú fídíò ní 00:00) fún àlàyé síwájú síi lórí ìgbésẹ̀ kọ̀ọ̀kan.
Wo bí a ṣe ṣe ìṣirò resistor àti folti níbí.
Àlàyé Ẹ̀rọ
Ẹ̀rọ̀ pàtàkì nínú iṣẹ́ yìí ni ẹ̀rọ̀ amúgbáwọ́n folti. Ó sábà ní àwọn ibùdó mẹ́ta: ọ̀kan fún ìjáde àmì (signal output), ọ̀kan fún ilẹ̀ (ground), àti ọ̀kan fún ìwọlé folti rere (positive voltage input). Pínì àmì (signal pin) sopọ̀ mọ́ ìwọlé analog ti Arduino, tí ó jẹ́ kí ó ka àwọn ipele folti. Ẹ̀rọ̀ náà lo ẹ̀rọ̀ ìpín folti (voltage divider circuit), tí ó ní àwọn resistor méjì, láti dín folti kù sí ipele tí ó ṣeé ṣe fún Arduino.
Nígbà tí o bá ń díwọ̀n folti, ó ṣe pàtàkì láti sopọ̀ ibùdó ilẹ̀ ti ẹ̀rọ̀ amúgbáwọ́n sí ilẹ̀ orísun folti tí o ń díwọ̀n. Ibùdó rere sopọ̀ sí ibi tí o fẹ́ díwọ̀n, tí ó ń ṣàmúlò pé àwọn ìwọ̀n náà péye. Ètò rírọrùn yìí mú kí a má nilo àwọn okun àti ẹ̀rọ̀ àfikún, tí ó sì jẹ́ kí ó rọrùn fún olùṣàmúlò.
Àwọn Àlàyé Datasheet
| Olùṣe | Generic |
|---|---|
| Nọ́mbà apá | Ẹ̀rọ̀ Amúgbáwọ́n Folti |
| Folti Logic/IO | 5 V |
| Folti ìpèsè | 0–25 V |
| Ìwọ̀n folti ìwọlé | 0–25 V |
| Ìwọ̀n folti ìjáde | 0–5 V |
| Ìwọ̀n iná ìwọlé | ≤ 20 mA |
| Àkójọpọ̀ | Module |
| Àwọn àkíyèsí / oríṣiríṣi | Ó lè yàtọ̀ láti ọ̀dọ̀ olùṣe |
- Rí i pé àwọn àsopọ̀ tọ́nà láti yẹra fún ìbàjẹ́ sí Arduino tàbí ẹ̀rọ̀ amúgbáwọ́n.
- Lo orísun agbára tí ó dúró ṣinṣin láti rí i pé àwọn ìwọ̀n péye.
- Ṣàtúnṣe iye offset nínú kóòdù fún ìmúṣe àtúnṣe (calibration).
- Pa folti ìwọlé mọ́ nínú àwọn ààlà tí a sọ̀tọ̀ láti yẹra fún ìbàjẹ́.
- Fún àwọn ìwọ̀n folti gíga, lo àwọn resistor tí ó yẹ gẹ́gẹ́ bí ìpín folti.
Àwọn Ìtọ́nisọ́nà Àsopọ̀

Láti sopọ̀ ẹ̀rọ̀ amúgbáwọ́n folti, bẹ̀rẹ̀ nípa sísopọ̀ ibùdó ilẹ̀ ti ẹ̀rọ̀ náà sí ilẹ̀ orísun folti tí o ń díwọ̀n. Lẹ́yìn náà, sopọ̀ ibùdó àmì, tí a ṣàmì sí S, sí pínì analog ti Arduino A0. Ní ìparí, sopọ̀ ibùdó rere sí ibi folti tí o fẹ́ díwọ̀n. Ibùdó odi (negative terminal) yẹ kí a tún sopọ̀ sí ilẹ̀ láti parí ẹ̀yà iná (circuit).
Ó ṣe pàtàkì láti rí i pé àwọn àsopọ̀ ilẹ̀ dúró ṣinṣin láàárín orísun folti àti Arduino. Èyí yóò ràn ọ́ lọ́wọ́ láti gba àwọn ìwọ̀n folti péye. Bí o bá nílò láti díwọ̀n àwọn folti tí ó ga ju 25 volts lọ, àwọn resistor àfikún lè ṣe pàtàkì láti dá ìpín folti, ṣùgbọ́n fún ọ̀pọ̀ àwọn ìlò, ètò ìpìlẹ̀ yìí yóò tó.
Àwọn Àpẹẹrẹ Kóòdù & Ìtọ́sọ́nà
Kóòdù náà bẹ̀rẹ̀ nípa ṣíṣàlàyé onírúurú odidi (integer variable) tí a pè ní offset, tí a lò láti ṣàtúnṣe àwọn àìpé èyíkéyìí nínú ìwọ̀n folti. Ìṣiṣẹ́ setup (setup function) bẹ̀rẹ̀ ìbánisọ̀rọ̀ serial ní ìwọ̀n baud 9600, tí ó ṣe pàtàkì fún fífi àwọn ìwọ̀n folti hàn lórí ẹ̀rọ̀ ìṣàfihàn.
int offset = 20; // ṣètò iye àtúnṣe offset
void setup() {
Serial.begin(9600); // Bẹ̀rẹ̀ ìbánisọ̀rọ̀ serial
}
Nínú ìṣiṣẹ́ loop (loop function), kóòdù ka folti analog láti pínì A0 ó sì ṣàwòrán iye náà láti ibiti 0 sí 1023 sí ibiti folti 0 sí 2500, tí ó fi offset kún un. Lẹ́yìn náà, ó pín folti náà nípa 100 láti gba ìṣàfihàn ẹ̀wàá tí ó tọ́.
void loop() {
int volt = analogRead(A0); // ka ìwọlé
double voltage = map(volt, 0, 1023, 0, 2500) + offset; // ṣàwòrán kí o sì fi offset kún un
voltage /= 100; // pín nípa 100 láti gba àwọn iye ẹ̀wàá
Serial.print("Voltage: ");
Serial.print(voltage); // tẹ̀ folti jáde
Serial.println("V");
delay(500); // Dúró fún ìdajì ìṣẹ́jú
}
Loop yìí ń ka folti nígbà gbogbo ó sì ń tẹ̀ ẹ́ jáde sí ẹ̀rọ̀ ìṣàfihàn ní gbogbo ìdajì ìṣẹ́jú. O lè ṣàtúnṣe iye delay láti yí ìwọ̀n ìgbà tí a ń ka àwọn ìwọ̀n padà bí o bá nílò.
Ìṣàfihàn / Ohun tí o Lè Retí
Nígbà ìṣàfihàn, o óò rí i pé folti tí ó ga jù tí a lè díwọ̀n jẹ́ 25 volts nítorí ìṣètò ẹ̀rọ̀ náà. Bí o bá gbìyànjú láti díwọ̀n àwọn folti tí ó ga ju bẹ́ẹ̀ lọ, àwọn ìwọ̀n náà yóò kún sí 25 volts pẹ̀lú èyíkéyìí offset tí o ti ṣètò (nínú fídíò ní 08:00). Àwọn ìwọ̀n náà yẹ kí ó péye déédé, o sì lè ṣàmúlò wọn lòdì sí ẹ̀rọ̀ ìdíwọ̀n (multimeter) fún àwọn ìdí ìmúṣe àtúnṣe.
/*
* This is the Arduino code for a Voltage Sensor.
* You will measure voltage using this module, which eliminates the need for extra resistors.
* In the video, you will also learn how to measure any voltages.
* Watch the video instruction for Arduino Voltage sensor: https://youtu.be/FaoKzi7tgME
* *
* Permission granted to share this code, given that this
* note is kept with the code.
* Disclaimer: This code is "AS IS" and for educational purposes only.
*
*/
/*
* Written by Ahmad Shamshiri for Robojax
* on Feb 07, 2018 at 20:05, Ajax, Ontario, Canada
*/
int offset =20;// set the correction offset value
void setup() {
// Robojax.com voltage sensor
Serial.begin(9600);
}
void loop() {
// Robojax.com voltage sensor
int volt = analogRead(A0);// read the input
double voltage = map(volt,0,1023, 0, 2500) + offset;// map 0-1023 to 0-2500 and add correction offset
voltage /=100;// divide by 100 to get the decimal values
Serial.print("Voltage: ");
Serial.print(voltage);//print the voltage
Serial.println("V");
delay(500);
}
Ohun ti o le nilo
-
Amazon
-
eBay
-
AliExpressBuy Arduino voltage sensor from AliExpresss.click.aliexpress.com
Orisun & itọkasi
-
Ita gbangbaDocument showing how the resistor was calculateddocs.google.com
Fáìlìs📁
Sikemi
-
Arduino Voltage Sensor Schematic wiring
Arduino Voltage Sensor Schematic wiring.png0.13 MB
Fayile Fritzing
-
Voltage Sensor-25V- module
Voltage-Sensor-25V-improved.fzpz0.01 MB -
HC-SR501 Body Sensor Module
HC-SR501 Body Sensor Module.fzpz0.01 MB -
Voltage Sensor 25V ImprovedFritzing part file for a 25V voltage sensor module. This module allows an Arduino or ESP32 to measure DC voltages up to 25V by scaling the input to a safe level for analog pins.
Voltage-Senso-25V-improved.fzpz0.01 MB