ஆர்டுயினோவை அடிப்படையாகக் கொண்ட புளூடூத் வோல்ட்மீட்டர். ஆர்டுயினோவில் டிஜிட்டல் வோல்ட்மீட்டர், சீரியல் போர்ட் ஆர்டுயினோ வோல்ட்மீட்டர் வழியாக பிசியுடன் இணைக்கப்பட்டு, ஒரு கணினியில் தரவு வெளியீடு

மல்டிஃபங்க்ஸ்னல் ஆர்டுயினோ அசெம்பிளிகள் வீட்டில் தயாரிக்கப்பட்ட எலக்ட்ரானிக் புரோகிராம் செய்யக்கூடிய சாதனங்களின் ரசிகர்களுக்கு பரவலான ஆர்வத்தை ஏற்படுத்துகின்றன, அவை சுவாரஸ்யமான யோசனைகளை உயிர்ப்பிக்க அனுமதிக்கின்றன.

ஆயத்த Arduino சுற்றுகளின் முக்கிய நன்மை தனித்துவமான தொகுதி-மட்டு கொள்கை: ஒவ்வொரு பலகையும் கூடுதல் இடைமுகங்களுடன் சேர்க்கப்படலாம், பல்வேறு திட்டங்களை உருவாக்குவதற்கான சாத்தியக்கூறுகளை முடிவில்லாமல் விரிவுபடுத்துகிறது.

Arduino தொகுதிகள்அதன் சொந்த பூட்லோடருடன் உலகளாவிய மைக்ரோகண்ட்ரோலரில் கட்டமைக்கப்பட்டுள்ளது, இது கூடுதல் சாதனங்களைப் பயன்படுத்தாமல் தேவையான நிரல் குறியீட்டைக் கொண்டு ப்ளாஷ் செய்வதை எளிதாக்குகிறது. நிரலாக்கமானது நிலையான C++ மொழியில் மேற்கொள்ளப்படுகிறது.

Arduino ஐப் பயன்படுத்துவதற்கான எளிய எடுத்துக்காட்டுகளில் ஒன்று, 0 முதல் 30 V வரையிலான அளவீட்டு வரம்பைக் கொண்ட உயர் துல்லியமான DC வோல்ட்மீட்டரை இந்த அசெம்பிளியின் அடிப்படையில் செயல்படுத்துவதாகும்.

ஆர்டுயினோ அனலாக் உள்ளீடுகள் ஐந்து வோல்ட்டுகளுக்கு மேல் இல்லாத நிலையான மின்னழுத்தத்திற்காக வடிவமைக்கப்பட்டுள்ளன, எனவே, இந்த மதிப்பை மீறும் மின்னழுத்தங்களில் அவற்றைப் பயன்படுத்துவது மின்னழுத்த வகுப்பி மூலம் சாத்தியமாகும்.


மின்னழுத்த பிரிப்பான் வழியாக அரேடுயினோவின் இணைப்பு வரைபடம்

ஒரு மின்னழுத்த பிரிப்பான் தொடரில் இணைக்கப்பட்ட இரண்டு மின்தடையங்களைக் கொண்டுள்ளது. இது சூத்திரத்தைப் பயன்படுத்தி கணக்கிடப்படுகிறது:

கார் ரேடியோவில் வெளிப்புற USB இணைப்பு

Arduino உடன் பரிசோதனை செய்ய விரும்புவோருக்கு ஒரு பயனுள்ள வரைபடம் வழங்கப்படுகிறது. இது ஒரு எளிய டிஜிட்டல் வோல்ட்மீட்டர் ஆகும், இது 0 - 30V வரம்பில் DC மின்னழுத்தத்தை நம்பகத்தன்மையுடன் அளவிட முடியும். Arduino போர்டை, வழக்கம் போல், 9V பேட்டரி மூலம் இயக்க முடியும்.

உங்களுக்குத் தெரிந்தபடி, 0 - 5V வரம்பில் DC மின்னழுத்தத்தை அளவிட Arduino இன் அனலாக் உள்ளீடுகள் பயன்படுத்தப்படலாம், மேலும் இந்த வரம்பை அதிகரிக்கலாம்,
மின்னழுத்த வகுப்பியாக இரண்டு மின்தடையங்களைப் பயன்படுத்துதல். பிரிப்பான் அளவிடப்பட்ட மின்னழுத்தத்தை Arduino அனலாக் உள்ளீடுகளின் நிலைக்கு குறைக்கும். பின்னர் நிரல் உண்மையான மின்னழுத்த மதிப்பைக் கணக்கிடும்.

Arduino போர்டில் உள்ள அனலாக் சென்சார் அனலாக் உள்ளீட்டில் மின்னழுத்தம் இருப்பதைக் கண்டறிந்து மைக்ரோகண்ட்ரோலரால் மேலும் செயலாக்க டிஜிட்டல் வடிவமாக மாற்றுகிறது. படத்தில், மின்தடையம் R1 (100 kOhm) மற்றும் R2 (10 kOhm) ஆகியவற்றைக் கொண்ட எளிய மின்னழுத்த வகுப்பி மூலம் அனலாக் உள்ளீட்டிற்கு (A0) மின்னழுத்தம் வழங்கப்படுகிறது.

இந்த பிரிப்பான் மதிப்புகள் மூலம், Arduino போர்டுக்கு 0 முதல் மின்னழுத்தம் வழங்கப்படலாம்
55V உள்ளீடு A0 இல் நாம் அளவிடப்பட்ட மின்னழுத்தத்தை 11 ஆல் வகுத்துள்ளோம், அதாவது 55V / 11=5V. வேறு வார்த்தைகளில் கூறுவதானால், Arduino உள்ளீட்டில் 55V ஐ அளவிடும் போது, ​​5V இன் அதிகபட்ச அனுமதிக்கக்கூடிய மதிப்பு உள்ளது. நடைமுறையில், இந்த வோல்ட்மீட்டரில் "0 - 30V" வரம்பை எழுதுவது நல்லது.
பாதுகாப்பு விளிம்பு!

குறிப்புகள்

காட்சி அளவீடுகள் ஒரு தொழில்துறை (ஆய்வக) வோல்ட்மீட்டரின் அளவீடுகளுடன் ஒத்துப்போகவில்லை என்றால், R1 மற்றும் R2 எதிர்ப்பின் மதிப்பை துல்லியமான கருவி மூலம் அளவிட வேண்டும் மற்றும் R1=100000.0 மற்றும் R2=10000.0 க்கு பதிலாக இந்த மதிப்புகளை செருக வேண்டும். நிரல் குறியீட்டில். பின்னர் நீங்கள் ஒரு ஆய்வக வோல்ட்மீட்டருடன் Arduino போர்டின் 5V மற்றும் "கிரவுண்ட்" ஊசிகளுக்கு இடையில் உண்மையான மின்னழுத்தத்தை அளவிட வேண்டும். இதன் விளைவாக 5V க்கும் குறைவான மதிப்பு இருக்கும், எடுத்துக்காட்டாக, இது 4.95V ஆக இருக்கும். இந்த உண்மையான மதிப்பு குறியீட்டின் வரியில் செருகப்பட வேண்டும்
vout = (மதிப்பு * 5.0) / 1024.0 க்கு பதிலாக 5.0.
மேலும், 1% சகிப்புத்தன்மையுடன் துல்லியமான மின்தடையங்களைப் பயன்படுத்த முயற்சிக்கவும்.

மின்தடையங்கள் R1 மற்றும் R2 அதிகரித்த உள்ளீட்டு மின்னழுத்தங்களுக்கு எதிராக சில பாதுகாப்பை வழங்குகின்றன. கூடுதலாக, இந்த வடிவமைப்பு மற்ற வகையான பாதுகாப்பை வழங்காது (மின்னழுத்த அலைகள், துருவமுனைப்பு தலைகீழ் அல்லது அதிக மின்னழுத்தத்திற்கு எதிராக).

டிஜிட்டல் வோல்ட்மீட்டர் திட்டம்

/*
DC வோல்ட்மீட்டர்
மின்னழுத்த பிரிப்பான் கருத்தை அடிப்படையாகக் கொண்ட ஒரு Arduino DVM
டி.கே.ஹரீந்திரன்
*/
#சேர்க்கிறது
LiquidCrystal lcd(7, 8, 9, 10, 11, 12);
int analogInput = 0;
float vout = 0.0;
மிதவை வின் = 0.0;
மிதவை R1 = 100000.0; // R1 (100K) எதிர்ப்பு - உரையைப் பார்க்கவும்!
மிதவை R2 = 10000.0; // R2 (10K) எதிர்ப்பு - உரையைப் பார்க்கவும்!
முழு மதிப்பு = 0;
வெற்றிட அமைப்பு())(
பின்முறை (அனலாக் இன்புட், இன்புட்);
lcd.begin(16, 2);
lcd.print("DC VOLTMETER");
}
வெற்றிட வளையம்()
// அனலாக் உள்ளீட்டில் மதிப்பைப் படிக்கவும்
மதிப்பு = அனலாக் ரீட் (அனலாக் இன்புட்);
vout = (மதிப்பு * 5.0) / 1024.0; // உரையைப் பார்க்கவும்
வின் = vout / (R2/(R1+R2));
என்றால் (வின்<0.09) {
வின்=0.0;// தேவையற்ற வாசிப்பை ரத்து செய்வதற்கான அறிக்கை !
}
lcd.setCursor(0, 1);
lcd.print("INPUT V= ");
lcd.print(vin);
தாமதம்(500);
}

Arduino-voltmeter இன் திட்ட வரைபடம்

கூறுகளின் பட்டியல்

Arduino Uno பலகை
100 kOhm மின்தடை
10 kOhm மின்தடை
100 ஓம் மின்தடை
10kOhm டிரிம்மர் மின்தடையம்
LCD டிஸ்ப்ளே 16?2 (ஹிட்டாச்சி HD44780)

Arduino Uno மற்றும் 1602A டிஸ்ப்ளேவுடன் வீட்டில் தயாரிக்கப்பட்ட பைபோலார் வோல்ட்மீட்டரின் திட்ட வரைபடம். "ARDUINO UNO இல் இரட்டை வோல்ட்மீட்டர்" (L.1) கட்டுரையில், ஆசிரியர் வோல்ட்மீட்டரின் விளக்கத்தையும் இரண்டு நிலையான மின்னழுத்தங்களின் ஒரே நேரத்தில் அளவீடு மற்றும் குறிப்பிற்கான ஒரு திட்டத்தையும் முன்மொழிந்தார். நீங்கள் ஒரே நேரத்தில் இரண்டு நிலையான மின்னழுத்தங்களை அளவிட வேண்டும் மற்றும் அவற்றை ஒப்பிட வேண்டும் என்றால் இது மிகவும் வசதியானது.

எடுத்துக்காட்டாக, DC மின்னழுத்த நிலைப்படுத்தியை அதன் உள்ளீடு மற்றும் வெளியீட்டில் மின்னழுத்தத்தை அளவிடுவதற்கு அல்லது மற்ற சந்தர்ப்பங்களில் சரிசெய்யும்போது அல்லது அமைக்கும்போது இது தேவைப்படலாம்.

இருப்பினும், இருமுனை மின்சாரம் கொண்ட சுற்றுகள் உள்ளன, பொதுவான "பூஜ்ஜியம்" உடன் தொடர்புடைய மின்னழுத்தத்தின் சில புள்ளியில் மின்னழுத்தம் நேர்மறை அல்லது எதிர்மறையாக இருக்கலாம்.

திட்ட வரைபடம்

சுற்று மற்றும் நிரலின் மாற்றத்தை இங்கே விவரிக்கிறோம், இதனால் சாதனம் நேர்மறை மற்றும் எதிர்மறை மின்னழுத்தத்தை அளவிட மற்றும் குறிக்கும்.

தொடங்குவதற்கு, அளவிடப்பட்ட மின்னழுத்தங்கள் A1 மற்றும் A2 ஆகிய இரண்டு அனலாக் உள்ளீடுகளுக்கு வழங்கப்படுகின்றன. மொத்தம் ஆறு அனலாக் உள்ளீடுகள் உள்ளன, A0-A5, அவற்றில் ஏதேனும் இரண்டை நீங்கள் தேர்ந்தெடுக்கலாம். இந்த வழக்கில், A1 மற்றும் A2 தேர்ந்தெடுக்கப்படுகின்றன. அனலாக் போர்ட்களில் உள்ள மின்னழுத்தம் நேர்மறையாக மட்டுமே இருக்கும் மற்றும் பூஜ்ஜியத்திலிருந்து மைக்ரோகண்ட்ரோலர் விநியோக மின்னழுத்தம் வரை, அதாவது பெயரளவில், 5V வரை மட்டுமே இருக்கும்.

மைக்ரோகண்ட்ரோலரின் ஏடிசி மூலம் அனலாக் போர்ட்டின் வெளியீடு டிஜிட்டல் வடிவமாக மாற்றப்படுகிறது. வோல்ட் அலகுகளில் முடிவைப் பெற, நீங்கள் அதை 5 ஆல் பெருக்க வேண்டும் (குறிப்பு மின்னழுத்தத்தால், அதாவது மைக்ரோகண்ட்ரோலரின் விநியோக மின்னழுத்தத்தால்) மற்றும் 1024 ஆல் வகுக்க வேண்டும்.

அரிசி. 1. Arduino Uno மற்றும் 1602A இல் இருமுனை வோல்ட்மீட்டரின் திட்ட வரைபடம்.

ARDUINO UNO போர்டில் உள்ள 5-வோல்ட் நிலைப்படுத்தியின் வெளியீட்டில் உள்ள உண்மையான மின்னழுத்தம் 5V இலிருந்து வேறுபடலாம் என்பதால், மைக்ரோகண்ட்ரோலரின் விநியோக மின்னழுத்தத்தை விட 5V க்கும் அதிகமான மின்னழுத்தங்களை அளவிட முடியும். கொஞ்சம் குறைவாக, உள்ளீட்டில் வழக்கமான மின்தடை பிரிப்பான்களைப் பயன்படுத்த வேண்டும்.

இங்கே இவை மின்தடையங்கள் R1, R3 மற்றும் R2, R4 முழுவதும் மின்னழுத்தம் பிரிப்பான்கள். ஆனால் மின்னழுத்தம் பூஜ்ஜியத்தை விட குறைவாக அளவிடப்பட வேண்டும் என்றால் என்ன செய்வது? இந்த வழக்கில், சூழ்நிலையிலிருந்து ஒரே ஒரு வழி உள்ளது - உள்ளீடு பூஜ்ஜியத்தின் அளவை உயர்த்த. வெறுமனே, உங்களுக்கு பாதி விநியோக மின்னழுத்தம் தேவை, அதாவது 2.5V வரை. இந்த வழக்கில், உள்ளீட்டு மின்னழுத்தத்தில் 2.5V தரவு சேர்க்கப்படும்.

பின்னர், நிரல் ரீதியாக, இந்த மின்னழுத்தத்தை அளவிடப்பட்ட ஒன்றிலிருந்து கழிக்கவும். ஆனால், இதற்கு இந்த மின்னழுத்தத்தின் கூடுதல் ஆதாரம் தேவைப்படும். கொள்கையளவில், இதைச் செய்வது கடினம் அல்ல, ஆனால் எளிமையான தீர்வு உள்ளது.

5V மின்னழுத்த நிலைப்படுத்திக்கு கூடுதலாக, ARDUINO UNO போர்டில் 3.3V மின்னழுத்த மூலமும் உள்ளது. எனவே இது நுழைவுக்கான "மெய்நிகர் பூஜ்ஜியமாக" பயன்படுத்தப்படலாம்.

சர்க்யூட்டில் உள்ள மாற்றங்கள் படம் 1 இல் தெரியும். முதல் விருப்பத்துடன் ஒப்பிடுகையில், "பூஜ்யம்" உள்ளீடு சாதாரண பூஜ்ஜியத்திலிருந்து +Z.ZV மூலத்திற்கு மாற்றியமைக்கப்படுகிறது. எனவே, உள்ளீட்டு மின்னழுத்தம் நேர்மறையாக இருக்கும்போது, ​​உள்ளீட்டில் அது 3.3V க்கும் அதிகமாக இருக்கும் (ஆனால் 5V க்கு மேல் இல்லை - இது அளவீட்டின் மேல் வரம்பு), மற்றும் எதிர்மறையாக இருக்கும்போது - 3.3V க்கும் குறைவாக (ஆனால் OV ஐ விட குறைவாக இல்லை - இது அளவீட்டின் குறைந்த வரம்பு).

அளவீட்டு வரம்புகளில் (மாடுலோ) அதிகரிப்பு ஒரு மின்தடை பிரிப்பான் மூலம் அடையப்படுகிறது, மேலும் X2 மற்றும் X3 க்கு வழங்கப்பட்ட உண்மையான உள்ளீட்டு மின்னழுத்தத்தின் அறிகுறி மைக்ரோகண்ட்ரோலர் உள்ளீடுகளில் உள்ள மின்னழுத்தத்திலிருந்து 3.3V மதிப்பை மென்பொருள் கழிப்பதன் மூலம் அடையப்படுகிறது.

நிரல் அட்டவணை 1 இல் காட்டப்பட்டுள்ளது. இதை வரிகளில் காணலாம்:

வோல்ட்=(வௌட்*5.0/1024.0-3.3)/0.048 ;

voltl=(voutl*5.0/1024.0-3.3)/0.048;

எண் 3.3 என்பது "மெய்நிகர் பூஜ்யம்" உள்ளீட்டின் இந்த மின்னழுத்தமாகும்.

இந்த வரிகளில், எண் 5.0 என்பது ARDUINO UNO போர்டின் நிலைப்படுத்தியின் வெளியீட்டில் உள்ள மின்னழுத்தமாகும். வெறுமனே, இது 5V ஆக இருக்க வேண்டும், ஆனால் வோல்ட்மீட்டர் துல்லியமாக வேலை செய்ய, இந்த மின்னழுத்தம் முதலில் அளவிடப்பட வேண்டும். சக்தி மூலத்தை இணைத்து, போர்டின் POWER இணைப்பியில் +5V மின்னழுத்தத்தை மிகவும் துல்லியமான வோல்ட்மீட்டருடன் அளவிடவும்.

என்ன நடக்கிறது, 5.0 க்கு பதிலாக இந்த வரிகளில் உள்ளிடவும் இது மின்னழுத்தம் +3.3V க்கும் பொருந்தும் - இது பலகை இணைப்பியில் அளவிடப்பட வேண்டும், ஏனெனில் உண்மையில் இது 3.3V இலிருந்து சற்று வேறுபடலாம். எடுத்துக்காட்டாக, "5V" உண்மையில் 4.85V மற்றும் "3.3V" உண்மையில் 3.32V என்றால், கோடுகள் இப்படி இருக்கும்:

வோல்ட்=(வவுட்*4.85/1024.0-3.32)/0.048;

voltl=(voutl*4.85/1024.0-3.32)/0.048;

அடுத்த கட்டத்தில், நீங்கள் மின்தடையங்கள் R1-R4 இன் உண்மையான எதிர்ப்பை அளவிட வேண்டும் மற்றும் சூத்திரங்களைப் பயன்படுத்தி இந்த வரிகளுக்கான K குணகங்களை (0.048 என சுட்டிக்காட்டப்படுகிறது) தீர்மானிக்க வேண்டும்:

K1 = R3 / (R1+R3) மற்றும் K2 = R4 / (R2+R4)

K1 = 0.046, மற்றும் K2 = 0.051 என்று வைத்துக்கொள்வோம், எனவே நாம் எழுதுகிறோம்:

வோல்ட்=(வவுட்*4.85/1024.0-3.32)/0.046;

voltl=(voutl*4.85/1024.0-3.32)/0.051;

எனவே, ARDUINO UNO போர்டின் 5-வோல்ட் மற்றும் 3.3-வோல்ட் நிலைப்படுத்திகளின் வெளியீட்டில் உள்ள உண்மையான மின்னழுத்தத்தின் படி நிரல் உரையில் மாற்றங்கள் செய்யப்பட வேண்டும், மேலும் எதிர்ப்பு பிரிப்பான்களின் உண்மையான பிரிவு குணகங்களின்படி.

இதற்குப் பிறகு, சாதனம் துல்லியமாக வேலை செய்யும் மற்றும் எந்த சரிசெய்தல் அல்லது அளவுத்திருத்தம் தேவையில்லை. LCD காட்டி மீது எதிர்மறை மின்னழுத்தத்தை அளவிடும் போது, ​​தொடர்புடைய வரியில் மின்னழுத்த மதிப்புக்கு முன்னால் ஒரு கழித்தல் அடையாளம் இருக்கும். நேர்மறை மின்னழுத்தத்தை அளவிடும் போது, ​​எந்த அறிகுறியும் இல்லை.

எதிர்ப்பு பிரிப்பான்களின் பிரிவு குணகங்களை மாற்றுவதன் மூலம் (மற்றும், அதன்படி, "K" குணகங்கள்), நீங்கள் மற்ற அளவீட்டு வரம்புகளை உருவாக்கலாம், மேலும் இரண்டு உள்ளீடுகளுக்கும் ஒரே மாதிரியாக இருக்க வேண்டிய அவசியமில்லை.

H1 வகை 1602A திரவ படிக காட்சி தொகுதி ARDUINO UNO போர்டின் டிஜிட்டல் போர்ட்கள் D2-D7 உடன் இணைக்கப்பட்டுள்ளது என்பதை உங்களுக்கு நினைவூட்ட விரும்புகிறேன். LCD காட்டி 5V மின்னழுத்த நிலைப்படுத்தி பலகையில் அமைந்துள்ள 5V மின்னழுத்த நிலைப்படுத்தி மூலம் இயக்கப்படுகிறது.

குறிகாட்டியானது ARDUINO UNO உடன் தொடர்பு கொள்ள, அதைக் கட்டுப்படுத்த நீங்கள் ஒரு சப்ரூட்டினை நிரலில் ஏற்ற வேண்டும். இத்தகைய நடைமுறைகள் "நூலகங்கள்" என்று அழைக்கப்படுகின்றன, மேலும் ARDUINO UNO மென்பொருள் தொகுப்பில் பல்வேறு "நூலகங்கள்" உள்ளன. HD44780 அடிப்படையிலான LCD காட்டி வேலை செய்ய, உங்களுக்கு LiquidCrystal நூலகம் தேவை. எனவே, நிரல் (அட்டவணை 1) இந்த நூலகத்தை ஏற்றுவதன் மூலம் தொடங்குகிறது:

இந்த வரி இந்த நூலகத்தை ARDUINO UNO இல் ஏற்றுவதற்கான கட்டளையை வழங்குகிறது. பின்னர், LCD காட்டி வேலை செய்யும் ARDUINO UNO போர்ட்களை நீங்கள் ஒதுக்க வேண்டும். நான் D2 முதல் D7 வரையிலான துறைமுகங்களைத் தேர்ந்தெடுத்தேன். நீங்கள் மற்றவர்களைத் தேர்ந்தெடுக்கலாம். இந்த துறைமுகங்கள் வரியால் ஒதுக்கப்படுகின்றன:

லிக்விட் கிரிஸ்டல் லெட்(2, 3, 4, 5, 6, 7);

அதன் பிறகு, நிரல் வோல்ட்மீட்டரின் உண்மையான செயல்பாட்டிற்கு செல்கிறது.

கரவ்கின் வி. ஆர்கே-06-17.

இலக்கியம்: 1. கரவ்கின் வி. - ARDUINO UNO இல் இரட்டை வோல்ட்மீட்டர். ஆர்கே-01-17.

யோசனை

யோசனை மின்னழுத்தம், மின்னோட்டம், திறன், வெளியேற்றம் மற்றும் கட்டணம் ஆகியவற்றை அளவிடுவதற்கான சாதனங்கள் நீண்ட காலத்திற்கு முன்பு எழுந்தன, எனக்கு மட்டுமல்ல. பல்வேறு USB சாதனங்களைச் சோதிக்க USB Tester (Doctor) எனப்படும் பல பொம்மைகளை நீங்கள் காணலாம். இடைமுகம் சாராமல், சில மின்னழுத்தங்கள் மற்றும் மின்னோட்டங்களுக்காக எளிமையாக வடிவமைக்கப்பட்ட, ஓரளவு உலகளாவிய சாதனத்தில் நான் ஆர்வமாக உள்ளேன். எடுத்துக்காட்டாக, 0 - 20.00v, 0 - 5.00a, 0 - 99.99Ah. செயல்பாடுகளைப் பொறுத்தவரை, நான் இதைப் பார்க்கிறேன்

  • தற்போதைய மின்னழுத்தம் மற்றும் மின்னோட்டத்தைக் காட்டுகிறது, அதாவது வோல்ட்-ஆம்பியர் மீட்டர். கொள்கையளவில், நீங்கள் உடனடியாக சக்தியை பிரதிபலிக்க முடியும்.
  • திரட்டப்பட்ட திறனை எண்ணுதல் மற்றும் காட்டுதல். ஆம்பியர் மணிநேரங்களில் மற்றும் பெரும்பாலும் வாட் மணிநேரங்களில்.
  • செயல்முறை நேர காட்சி
  • மேலும், பெரும்பாலும், சரிசெய்யக்கூடிய குறைந்த மற்றும் மேல் மின்னழுத்த கட்-ஆஃப் வரம்புகள் (வெளியேற்றம் மற்றும் கட்டண வரம்புகள்)

வளர்ச்சி

கணக்கீடுகள் மற்றும் அளவீடுகளை செயல்படுத்த, எங்களுக்கு ஒரு கட்டுப்படுத்தி தேவை. Arduino உடனான எனது அறிமுகத்தின் ஒரு பகுதியாக இந்த யோசனையை நான் நினைவில் வைத்தேன், எனவே கட்டுப்படுத்தி ஒரு எளிய பிரபலமான Atmega328 ஆக இருக்கும், மேலும் இது சூழலில் திட்டமிடப்படும். அர்டுயினோ. ஒரு பொறியியல் கண்ணோட்டத்தில், தேர்வு அநேகமாக சிறந்தது அல்ல - கட்டுப்படுத்தி பணிக்கு ஒரு பிட் கொழுப்பு, மற்றும் அதன் ADC அளவிடும் என்று அழைக்க முடியாது, ஆனால் ... நாங்கள் முயற்சி செய்வோம்.

  • இந்த திட்டத்தில் நாங்கள் அதிகம் சாலிடர் செய்ய மாட்டோம். ஒரு அடிப்படையாக, நாங்கள் ஒரு ஆயத்த Arduino Pro Mini தொகுதியை எடுத்துக்கொள்வோம், ஏனெனில் சீனர்கள் $1.5 சில்லறை விற்பனைக்கு அவற்றை வழங்கத் தயாராக உள்ளனர்.
  • காட்சி சாதனம் 1602 டிஸ்ப்ளேவாக இருக்கும் - மற்றொரு $1.5. I2C இன்டர்ஃபேஸ் மாட்யூலுடன் எனக்கு விருப்பம் உள்ளது, ஆனால் இந்த திட்டத்தில் அது உண்மையில் தேவையில்லை ($0.7).
  • வளர்ச்சிக்கு நமக்கு ஒரு ப்ரெட்போர்டு தேவை. என் விஷயத்தில், இது $1க்கு ஒரு சிறிய ப்ரெட்போர்டு.
  • நிச்சயமாக, உங்களுக்கு கம்பிகள் மற்றும் வெவ்வேறு மதிப்புகளின் பல மின்தடையங்கள் தேவைப்படும். I2C இல்லாத 1602 டிஸ்ப்ளேக்கு, நீங்கள் மாறுபாட்டையும் தேர்ந்தெடுக்க வேண்டும் - இது 2 - 20 kOhm இன் மாறி மின்தடையத்துடன் செய்யப்படுகிறது.
  • ஒரு அம்மீட்டரைச் செயல்படுத்த உங்களுக்கு ஒரு ஷன்ட் தேவைப்படும். முதல் தோராயமாக, இது 0.1 ஓம், 5 W மின்தடையமாக இருக்கலாம்.
  • தானியங்கி பணிநிறுத்தத்தை செயல்படுத்த, சாதனத்தின் அதிகபட்ச மின்னோட்டத்திற்காக வடிவமைக்கப்பட்ட தொடர்புகளுடன் கூடிய ரிலே மற்றும் விநியோக மின்னழுத்தத்திற்கு சமமான மின்னழுத்தம் உங்களுக்குத் தேவைப்படும். ரிலேவைக் கட்டுப்படுத்த உங்களுக்கு NPN டிரான்சிஸ்டர் மற்றும் ஒரு பாதுகாப்பு டையோடு தேவை.
  • சாதனம் வெளிப்புற சக்தி மூலத்திலிருந்து இயக்கப்படும், வெளிப்படையாக குறைந்தது 5 V. மின்சாரம் பெரிதும் மாறுபடும் என்றால், ஒரு ஒருங்கிணைந்த நிலைப்படுத்தி வகை 7805 தேவைப்படும் - இது ரிலே மின்னழுத்தத்தை தீர்மானிக்கும்.
  • எப்பொழுது ஃபார்ம்வேரைப் பதிவேற்ற Arduino Pro Miniக்கு USB-TTL மாற்றி தேவைப்படும்.
  • அமைப்பதற்கு உங்களுக்கு மல்டிமீட்டர் தேவைப்படும்.

வோல்ட்மீட்டர்

நான் தோராயமாக 0 - 20V ஒரு வரம்பில் ஒரு எளிய வோல்ட்மீட்டரை செயல்படுத்துகிறேன். இந்த குறிப்பு முக்கியமானது, ஏனெனில் எங்கள் கட்டுப்படுத்தியின் ADC 10-பிட் திறன் (1024 தனி மதிப்புகள்) கொண்டது, எனவே பிழை குறைந்தது 0.02 V (20/1024) ஆக இருக்கும். வன்பொருளைச் செயல்படுத்த, கன்ட்ரோலரின் அனலாக் உள்ளீடு, ஒரு ஜோடி மின்தடையங்களால் செய்யப்பட்ட ஒரு பிரிப்பான் மற்றும் சில வகையான வெளியீடுகள் தேவை (முடிக்கப்பட்ட பதிப்பில் ஒரு காட்சி, பிழைத்திருத்தத்திற்கு ஒரு சீரியல் போர்ட் பயன்படுத்தப்படலாம்).

ADC அளவீட்டின் கொள்கையானது அனலாக் உள்ளீட்டில் உள்ள மின்னழுத்தத்தை குறிப்பு VRef உடன் ஒப்பிடுவதாகும். ADC வெளியீடு எப்போதும் முழு எண்ணாக இருக்கும் - 0 என்பது 0V க்கு ஒத்திருக்கிறது, 1023 மின்னழுத்த VRef ஐ ஒத்துள்ளது. தொடர்ச்சியான மின்னழுத்த அளவீடுகளை எடுத்து, திரையில் உள்ள மதிப்பிற்கான புதுப்பிப்புகளுக்கு இடையேயான காலப்பகுதியில் சராசரியாக அளவீடு செயல்படுத்தப்படுகிறது. குறிப்பு மின்னழுத்தத்தின் தேர்வு முக்கியமானது, ஏனெனில் இது விநியோக மின்னழுத்தத்திற்கு இயல்புநிலையாக இருக்கும், இது நிலையானதாக இருக்காது. இது எங்களுக்குப் பொருந்தாது - 1.1V மின்னழுத்தத்துடன் நிலையான உள் குறிப்பு மூலத்தை அடிப்படையாக எடுத்து, அனலாக் ரெஃபரன்ஸ் (உள்) என அழைப்பதன் மூலம் அதைத் தொடங்குவோம். மல்டிமீட்டர் அளவீடுகளைப் பயன்படுத்தி அதன் மதிப்பை அளவீடு செய்வோம்.

இடதுபுறத்தில் உள்ள வரைபடம் காட்சியின் நேரடி கட்டுப்பாட்டுடன் ஒரு மாறுபாட்டைக் காட்டுகிறது (இது வெறுமனே கட்டுப்படுத்தப்படுகிறது - நிலையான LiquidCrystal\HelloWorld ஓவியத்தைப் பார்க்கவும்). வலதுபுறத்தில் I2C விருப்பம் உள்ளது, அதை நான் மேலும் பயன்படுத்துவேன். I2C கம்பிகளில் சேமிக்க உங்களை அனுமதிக்கிறது (வழக்கமான பதிப்பில் 10 உள்ளன, பின்னொளியைக் கணக்கிடவில்லை). ஆனால் இதற்கு கூடுதல் தொகுதி மற்றும் மிகவும் சிக்கலான துவக்கம் தேவைப்படுகிறது. எந்தவொரு சந்தர்ப்பத்திலும், தொகுதியில் உள்ள எழுத்துக்களின் காட்சி முதலில் சரிபார்க்கப்பட வேண்டும் மற்றும் மாறுபாட்டை சரிசெய்ய வேண்டும் - இதைச் செய்ய, துவக்கத்திற்குப் பிறகு நீங்கள் எந்த உரையையும் காட்ட வேண்டும். மின்தடை R1 அல்லது I2C தொகுதியின் ஒத்த மின்தடையத்தால் மாறுபாடு சரிசெய்யப்படுகிறது.

உள்ளீடு 1:19 பிரிப்பான் ஆகும், இது Vref = 1.1 இல் அதிகபட்சமாக 20V மின்னழுத்தத்தைப் பெற உங்களை அனுமதிக்கிறது (பொதுவாக ஒரு மின்தேக்கி + ஒரு ஜீனர் டையோடு பாதுகாப்பிற்காக உள்ளீட்டிற்கு இணையாக வைக்கப்படுகிறது, ஆனால் இது இப்போது எங்களுக்கு முக்கியமல்ல. ) மின்தடையங்கள் ஒரு பரவலைக் கொண்டுள்ளன, மேலும் கட்டுப்படுத்தியின் குறிப்பு Vref க்கும் உள்ளது, எனவே அசெம்பிளி செய்த பிறகு நாம் நமது சாதனம் மற்றும் ஒரு குறிப்பு மல்டிமீட்டருக்கு இணையாக மின்னழுத்தத்தை (குறைந்தபட்சம் வழங்கல்) அளவிட வேண்டும் மற்றும் அளவீடுகள் பொருந்தும் வரை குறியீட்டில் Vref ஐத் தேர்ந்தெடுக்கவும். எந்த ஏடிசியும் பூஜ்ஜிய ஆஃப்செட் மின்னழுத்தத்தைக் கொண்டுள்ளது என்பதும் குறிப்பிடத்தக்கது (இது வரம்பின் தொடக்கத்தில் உள்ள அளவீடுகளைக் கெடுக்கும்), ஆனால் நாங்கள் இப்போது அதற்குள் செல்ல மாட்டோம்.

வழங்கல் மற்றும் அளவிடும் நிலத்தை பிரிப்பதும் முக்கியமானதாக இருக்கும். எங்கள் ADC 1mV ஐ விட சற்று மோசமான தெளிவுத்திறனைக் கொண்டுள்ளது, இது வயரிங் தவறாக இருந்தால், குறிப்பாக பிரட்போர்டில் சிக்கல்களை உருவாக்கலாம். தொகுதி பலகையின் தளவமைப்பு ஏற்கனவே செய்யப்பட்டுவிட்டதால், நாம் பின்களை மட்டுமே தேர்ந்தெடுக்க வேண்டும். தொகுதியில் பல "தரையில்" ஊசிகள் உள்ளன, எனவே சக்தி ஒரு "தரையில்" தொகுதிக்குள் நுழைவதை உறுதி செய்ய வேண்டும், மற்றொன்று மூலம் அளவீடுகள். உண்மையில், மாற்றங்களைச் செய்ய, நான் எப்போதும் அனலாக் உள்ளீடுகளுக்கு மிக நெருக்கமான கிரவுண்ட் பின்னைப் பயன்படுத்துகிறேன்.

I2C ஐக் கட்டுப்படுத்த, LiquidCrystal_I2C நூலகத்தின் பதிப்பு பயன்படுத்தப்படுகிறது - என் விஷயத்தில், I2C தொகுதியின் குறிப்பிட்ட பின்அவுட் சுட்டிக்காட்டப்படுகிறது (சீனர்கள் வெவ்வேறு கட்டுப்பாடுகளுடன் தொகுதிகளை உருவாக்குகிறார்கள்). Arduino இல் I2C க்கு A4 மற்றும் A5 ஊசிகளைப் பயன்படுத்த வேண்டும் என்பதையும் நான் கவனிக்கிறேன் - புரோ மினி போர்டில் அவை விளிம்பில் இல்லை, இது ப்ரெட்போர்டில் முன்மாதிரி செய்வதற்கு சிரமமாக உள்ளது.

ஆதாரம்

#சேர்க்கிறது #சேர்க்கிறது // i2c டிஸ்ப்ளேவுடன் கூடிய எளிய வோல்ட்மீட்டர் 1602. V 16.11 // தரமற்ற பின்அவுட்டுடன் கூடிய i2c டிஸ்ப்ளே 1602க்கான அமைப்புகள் #define LCD_I2C_ADDR 0x27 #define BACKLIGHT 3 #define LCD_EN_2 # LCD_LCD define #எல்சிடி_டி5ஐ வரையறுக்கவும் 5 #எல்சிடி_டி6 6 #எல்சிடி_டி7 வரையறுத்து 7 லிக்விட் கிரிஸ்டல்_ஐ2சி எல்சிடி(எல்சிடி_ஐ2சி_ஏடிடிஆர்,எல்சிடி_இஎன்,எல்சிடி_ஆர்டபிள்யூ,எல்சிடி_ஆர்எஸ்,எல்சிடி_டி4,எல்சிடி_டி5,எல்சிடி_டி6,எல்சிடி_டி7); // படிக்கும் புதுப்பிப்பு நேரம், ms (200-2000) # REFRESH_TIME 330 // அனலாக் உள்ளீடு # வரையறுக்க PIN_VOLT A0 // உள் குறிப்பு மின்னழுத்தம் (தேர்வு) ஃப்ளோட் VRef = 1.10; // உள்ளீடு எதிர்ப்பு பிரிப்பான் குணகம் (Rh + Rl) / Rl. IN<-[ Rh ]--(analogInPin)--[ Rl ]--|GND const float VoltMult = (180.0 + 10.0) / 10.0; float InVolt, Volt; void setup() { analogReference(INTERNAL); // Инициализация дисплея lcd.begin (16, 2); lcd.setBacklightPin(BACKLIGHT, POSITIVE); lcd.setBacklight(HIGH); // включить подсветку lcd.clear(); // очистить дисплей lcd.print("Voltage"); } void loop() { unsigned long CalcStart = millis(); int ReadCnt = 0; InVolt = 0; // Чтение из порта с усреднением while ((millis() - CalcStart) < REFRESH_TIME) { InVolt += analogRead(PIN_VOLT); ReadCnt++; } InVolt = InVolt / ReadCnt; // Смещение 0 для конкретного ADC (подобрать или отключить) if (InVolt >0.2) இன்வோல்ட் += 3; // வோல்ட்டுகளாக மாற்றவும் (மதிப்பு: 0..1023 -> (0..VRef) Mult மூலம் அளவிடப்பட்டது) Volt = InVolt * VoltMult * VRef / 1023; // வெளியீடு தரவு lcd.setCursor (0, 1); lcd.print(வோல்ட்); lcd.print("V"); )

இந்த கட்டுரை பரிசோதனை செய்ய விரும்புவோருக்கு ஒரு சுவாரஸ்யமான வரைபடத்தை வழங்குகிறது அர்டுயினோ. இது ஒரு எளிய டிஜிட்டல் வோல்ட்மீட்டரைக் கொண்டுள்ளது, இது DC மின்னழுத்தத்தை 0 முதல் 30 V வரம்பில் பாதுகாப்பாக அளவிட முடியும். Arduino போர்டையே நிலையான 9 V விநியோகத்தில் இருந்து இயக்க முடியும்



உங்களுக்கு தெரியும், Arduino அனலாக் உள்ளீட்டைப் பயன்படுத்தி நீங்கள் 0 முதல் 5 V வரை மின்னழுத்தத்தை அளவிடலாம் (5 V இன் நிலையான குறிப்பு மின்னழுத்தத்துடன்). ஆனால் இந்த வரம்பை மின்னழுத்த பிரிப்பான் மூலம் விரிவாக்கலாம்.


பிரிப்பான் அளவிடப்பட்ட மின்னழுத்தத்தை அனலாக் உள்ளீட்டிற்கு ஏற்றுக்கொள்ளக்கூடிய அளவிற்கு குறைக்கிறது. பின்னர் சிறப்பாக எழுதப்பட்ட குறியீடு உண்மையான மின்னழுத்தத்தைக் கணக்கிடுகிறது.



Arduino இல் உள்ள அனலாக் சென்சார் அனலாக் உள்ளீட்டில் உள்ள மின்னழுத்தத்தைக் கண்டறிந்து அதை மைக்ரோகண்ட்ரோலரால் படிக்கக்கூடிய டிஜிட்டல் வடிவமாக மாற்றுகிறது. R1 (100K) மற்றும் R2 (10K) எதிர்ப்புகளால் உருவாக்கப்பட்ட மின்னழுத்த வகுப்பியை அனலாக் உள்ளீடு A0 உடன் இணைக்கிறோம். இந்த எதிர்ப்பு மதிப்புகள் மூலம், 55 V வரை Arduino க்கு வழங்கப்படலாம், ஏனெனில் இந்த வழக்கில் பிரிவு குணகம் 11, எனவே 55V/11 = 5V. பலகைக்கு அளவீடுகள் பாதுகாப்பானவை என்பதை உறுதிப்படுத்த, 0 முதல் 30 V வரையிலான மின்னழுத்தத்தை அளவிடுவது நல்லது.



சரிபார்க்கப்பட்ட வோல்ட்மீட்டர் அளவீடுகளுடன் காட்சி அளவீடுகள் பொருந்தவில்லை என்றால், R1 மற்றும் R2 இன் சரியான மதிப்புகளைக் கண்டறிய துல்லியமான டிஜிட்டல் மல்டிமீட்டரைப் பயன்படுத்தவும். இந்த வழக்கில், குறியீட்டில் நீங்கள் R1=100000.0 மற்றும் R2=10000.0 ஆகியவற்றை உங்கள் சொந்த மதிப்புகளுடன் மாற்ற வேண்டும். 5V மற்றும் GND க்கு இடையில் போர்டில் உள்ள மின்னழுத்தத்தை அளவிடுவதன் மூலம் நீங்கள் மின்சார விநியோகத்தை சரிபார்க்க வேண்டும். மின்னழுத்தம் 4.95 V ஆக இருக்கலாம். பின்னர் குறியீடு vout = (மதிப்பு * 5.0) / 1024.0 இல் நீங்கள் 5.0 ஐ 4.95 உடன் மாற்ற வேண்டும். 1% க்கு மேல் இல்லாத பிழையுடன் துல்லியமான மின்தடையங்களைப் பயன்படுத்துவது நல்லது. 55V க்கு மேல் உள்ள மின்னழுத்தம் Arduino போர்டை சேதப்படுத்தும் என்பதை நினைவில் கொள்ளுங்கள்!



#சேர்க்கிறது LiquidCrystal lcd(7, 8, 9, 10, 11, 12); int analogInput = 0; float vout = 0.0; மிதவை வின் = 0.0; மிதவை R1 = 100000.0; // எதிர்ப்பு R1 (100K) மிதவை R2 = 10000.0; // எதிர்ப்பு R2 (10K) int மதிப்பு = 0; void setup())( pinMode(analogInput, INPUT); lcd.begin(16, 2); lcd.print("DC VOLTMETER"); ) void loop())( // அனலாக் மதிப்பு மதிப்பைப் படிக்க = analogRead(analogInput) vout = (மதிப்பு * 5.0) / 1024.0 vin = vout / (R2/(R1+R2));<0.09) { vin=0.0;// обнуляем нежелательное значение } lcd.setCursor(0, 1); lcd.print("INPUT V= "); lcd.print(vin); delay(500); }


பயன்படுத்தப்படும் கூறுகள்:


Arduino Uno பலகை
மின்தடை 100 KOhm
மின்தடை 10 KOhm
100 ஓம் மின்தடை
பொட்டென்டோமீட்டர் 10KOhm
எல்சிடி டிஸ்ப்ளே 16×2