- தேவையான பொருட்கள்
- வேகத்தைக் கணக்கிட்டு அதை அனலாக் ஸ்பீடோமீட்டரில் காண்பிக்கிறது
- சுற்று வரைபடம் மற்றும் இணைப்புகள்
- நிரலாக்க விளக்கம்
ஒரு வாகனம் அல்லது மோட்டரின் வேகம் / ஆர்பிஎம் அளவிடுவது எப்போதும் முயற்சிக்க ஒரு கண்கவர் திட்டமாகும். இந்த திட்டத்தில், அர்டுயினோவைப் பயன்படுத்தி அனலாக் ஸ்பீடோமீட்டரை உருவாக்க உள்ளோம். வேகத்தை அளவிட ஐஆர் சென்சார் தொகுதியைப் பயன்படுத்துவோம். வேகத்தை அளவிட ஹால் சென்சார் போன்ற வேறு வழிகள் / சென்சார்கள் உள்ளன, ஆனால் ஐஆர் சென்சார் பயன்படுத்துவது எளிதானது, ஏனெனில் ஐஆர் சென்சார் தொகுதி மிகவும் பொதுவான சாதனம் மற்றும் அதை சந்தையில் இருந்து எளிதாகப் பெறலாம், மேலும் இது எந்த வகையிலும் பயன்படுத்தப்படலாம் மோட்டார் வாகனம்.
இந்த திட்டத்தில், அனலாக் மற்றும் டிஜிட்டல் வடிவத்தில் வேகத்தைக் காட்டப் போகிறோம். இந்த திட்டத்தை செய்வதன் மூலம், அர்டுயினோ மற்றும் ஸ்டெப்பர் மோட்டாரைக் கற்றுக்கொள்வதில் எங்கள் திறன்களை மேம்படுத்துவோம், ஏனெனில் இந்த திட்டத்தில் குறுக்கீடுகள் மற்றும் டைமர்களைப் பயன்படுத்துகிறது. இந்த திட்டத்தின் முடிவில், நீங்கள் சுழலும் எந்தவொரு பொருளையும் உள்ளடக்கிய வேகத்தையும் தூரத்தையும் கணக்கிட்டு அவற்றை 16x2 எல்சிடி திரையில் டிஜிட்டல் வடிவத்திலும் அனலாக் மீட்டரிலும் காண்பிக்க முடியும். எனவே இந்த ஸ்பீடோமீட்டர் மற்றும் ஓடோமீட்டர் சர்க்யூட்டை அர்டுயினோவுடன் தொடங்குவோம்
தேவையான பொருட்கள்
- அர்டுயினோ
- இருமுனை ஸ்டெப்பர் மோட்டார் (4 கம்பி)
- ஸ்டெப்பர் மோட்டார் டிரைவர் (L298n Module)
- ஐஆர் சென்சார் தொகுதி
- 16 * 2 எல்சிடி காட்சி
- 2.2 கே மின்தடை
- கம்பிகளை இணைக்கிறது
- ப்ரெட்போர்டு.
- மின்சாரம்
- ஸ்பீடோமீட்டர் படம் அச்சுப்பொறி

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

இங்கே இந்த திட்டத்தில், rpm ஐக் கண்டறிய அதிக முன்னுரிமை குறுக்கீட்டைப் பயன்படுத்தியுள்ளோம், மேலும் அதை உயரும் பயன்முறையில் உள்ளமைத்துள்ளோம். எனவே, சென்சார் வெளியீடு குறைவாக உயர்வாக செல்லும் போதெல்லாம், RPMCount () செயல்பாடு செயல்படுத்தப்படும். நாங்கள் இரண்டு பிளேட் ரோட்டரைப் பயன்படுத்தியுள்ளதால், ஒரு புரட்சியில் செயல்பாடு 4 முறை அழைக்கப்படும்.
எடுக்கப்பட்ட நேரம் தெரிந்தவுடன், கீழேயுள்ள சூத்திரங்களைப் பயன்படுத்தி RPM ஐக் கணக்கிடலாம், அங்கு 1000 / நேரம் எடுக்கப்பட்டால் எங்களுக்கு RPS (வினாடிக்கு புரட்சி) கிடைக்கும், மேலும் 60 உடன் பெருக்கினால் உங்களுக்கு RPM (நிமிடத்திற்கு புரட்சி) கிடைக்கும்
rpm = (60/2) * (1000 / (மில்லிஸ் () - நேரம்)) * REV / bladesInFan;
ஆர்.பி.எம் பெற்ற பிறகு, கொடுக்கப்பட்ட சூத்திரத்தால் வேகத்தை கணக்கிடலாம்:
வேகம் = ஆர்.பி.எம் * (2 * பை * ஆரம்) / 1000
பை = 3.14 மற்றும் ஆரம் 4.7 இன்ச் என்று எங்களுக்குத் தெரியும்
ஆனால் முதலில் நாம் ஆரம் அங்குலத்திலிருந்து மீட்டராக மாற்ற வேண்டும்:
ஆரம் = ((ஆரம் * 2.54) / 100.0) மீட்டர் வேகம் = ஆர்.பி.எம் * 60.0 * (2.0 * 3.14 * ஆரம்) / 1000.0) மணிக்கு கிலோமீட்டரில்
இங்கே நாம் rpm ஐ 60 ஆல் பெருக்கி rpm ஐ rph ஆக மாற்றுவோம் (ஒரு மணி நேரத்திற்கு புரட்சி) மற்றும் மீட்டர் / மணிநேரத்தை கிலோமீட்டர் / மணிநேரமாக மாற்ற 1000 ஆல் வகுக்கப்படுகிறது.
கிமீ வேகத்தில் வேகத்தை வைத்த பிறகு, இந்த மதிப்புகளை எல்.சி.டி வழியாக நேரடியாக டிஜிட்டல் வடிவத்தில் காட்டலாம், ஆனால் அனலாக் வடிவத்தில் வேகத்தைக் காட்ட நாம் இல்லை என்பதைக் கண்டுபிடிக்க இன்னும் ஒரு கணக்கீடு செய்ய வேண்டும். படிகளின், அனலாக் மீட்டரில் வேகத்தைக் காட்ட ஸ்டெப்பர் மோட்டார் நகர வேண்டும்.
இங்கே நாம் அனலாக் மீட்டருக்கு 4 கம்பி இருமுனை ஸ்டெப்பர் மோட்டாரைப் பயன்படுத்தினோம், இது 1.8 டிகிரி அதாவது ஒரு புரட்சிக்கு 200 படிகள் கொண்டது.

இப்போது நாம் ஸ்பீடோமீட்டரில் 280 கி.மீ. எனவே 280 கி.மீ வேகத்தில் ஸ்டெப்பர் மோட்டார் காட்ட 280 டிகிரி செல்ல வேண்டும்
எனவே எங்களிடம் மேக்ஸ்ஸ்பீட் = 280 உள்ளது
மற்றும் மேக்ஸ்ஸ்டெப்ஸ் இருக்கும்
maxSteps = 280 / 1.8 = 155 படிகள்
இப்போது எங்கள் Arduino குறியீட்டில் ஒரு செயல்பாடு உள்ளது, அதாவது வரைபட செயல்பாடு, இது வேகத்தை படிகளாக வரைபடப்படுத்த இங்கே பயன்படுத்தப்படுகிறது.
படிகள் = வரைபடம் (வேகம், 0, மேக்ஸ்ஸ்பீட் , 0, மேக்ஸ்ஸ்டெப்ஸ்);
எனவே இப்போது எங்களிடம் உள்ளது
படிகள் = வரைபடம் (வேகம், 0,280,0,155);
படிகளைக் கணக்கிட்ட பிறகு, ஸ்டெப்பர் மோட்டரை நகர்த்துவதற்காக ஸ்டெப்பர் மோட்டார் செயல்பாட்டில் இந்த படிகளை நேரடியாகப் பயன்படுத்தலாம். கொடுக்கப்பட்ட கணக்கீடுகளைப் பயன்படுத்தி ஸ்டெப்பர் மோட்டரின் தற்போதைய படிகள் அல்லது கோணத்தையும் நாம் கவனித்துக் கொள்ள வேண்டும்
currSteps = படிகள் படிகள் = currSteps-preSteps preSteps = currSteps
இங்கே கர்ர்ஸ்டெப்ஸ் என்பது கடைசி கணக்கீட்டிலிருந்து வரும் தற்போதைய படிகள் மற்றும் ப்ரீஸ்டெப்ஸ் கடைசியாக நிகழ்த்தப்பட்ட படிகள்.
சுற்று வரைபடம் மற்றும் இணைப்புகள்
இந்த அனலாக் ஸ்பீடோமீட்டருக்கான சுற்று வரைபடம் எளிதானது, இங்கே டிஜிட்டல் வடிவத்தில் வேகத்தைக் காட்ட 16x2 எல்சிடி மற்றும் அனலாக் ஸ்பீடோமீட்டர் ஊசியைச் சுழற்ற ஸ்டெப்பர் மோட்டார் ஆகியவற்றைப் பயன்படுத்தினோம்.
ஆர்டுயினோவின் அனலாக் ஊசிகளைப் பின்பற்றி 16x2 எல்சிடி இணைக்கப்பட்டுள்ளது.
RS - A5
RW - GND
EN - A4
D4 - A3
D5 - A2
D6 - A1
D7 - A0

எல்சிடியின் பிரகாசத்தை அமைக்க 2.2 கே மின்தடை பயன்படுத்தப்படுகிறது. ஆர்.பி.எம் கணக்கிட விசிறியின் பிளேட்டைக் கண்டறியப் பயன்படுத்தப்படும் ஒரு ஐஆர் சென்சார் தொகுதி, குறுக்கீடு 0 உடன் இணைக்கப்பட்டுள்ளது, அதாவது அர்டுயினோவின் டி 2 முள்.
இங்கே நாம் ஒரு ஸ்டெப்பர் மோட்டார் இயக்கி அதாவது L293N தொகுதி பயன்படுத்தினோம். ஸ்டெப்பர் மோட்டார் டிரைவரின் IN1, IN2, IN3 மற்றும் IN4 முள் நேரடியாக Arduino இன் D8, D9, D10 மற்றும் D11 உடன் இணைக்கப்பட்டுள்ளது. மீதமுள்ள இணைப்புகள் சுற்று வரைபடத்தில் கொடுக்கப்பட்டுள்ளன.

நிரலாக்க விளக்கம்
Arduino Speedomete r க்கான முழுமையான குறியீடு இறுதியில் கொடுக்கப்பட்டுள்ளது, இங்கே நாம் அதன் சில முக்கியமான பகுதியை விளக்குகிறோம்.
நிரலாக்கப் பகுதியில், ஸ்டெப்பர் மோட்டார் நூலகம், லிக்விட் கிரிஸ்டல் எல்சிடி நூலகம் போன்ற தேவையான அனைத்து நூலகங்களையும் சேர்த்துள்ளோம், அவற்றுக்கான அறிவிக்கப்பட்ட ஊசிகளையும்.
#சேர்க்கிறது
இதற்குப் பிறகு, கணக்கீடுகளைச் செய்வதற்கு சில மாறிகள் மற்றும் மேக்ரோக்களை எடுத்துள்ளோம். முந்தைய பிரிவில் கணக்கீடுகள் ஏற்கனவே விளக்கப்பட்டுள்ளன.
ஆவியாகும் பைட் REV; கையொப்பமிடாத நீண்ட எண்ணாக ஆர்.பி.எம், ஆர்.பி.எம்; கையொப்பமிடாத நீண்ட st = 0; கையொப்பமிடாத நீண்ட நேரம்; int ledPin = 13; int led = 0, RPMlen, prevRPM; int கொடி = 0; int flag1 = 1; # பிளேடுகளை வரையறுக்கவும் இன்ஃபான் 2 மிதவை ஆரம் = 4.7; // இன்ச் இன்ட் ப்ரீஸ்டெப்ஸ் = 0; float stepAngle = 360.0 / (மிதவை) stepPerRevolution; மிதவை minSpeed = 0; மிதவை அதிகபட்சம் = 280.0; மிதவை minSteps = 0; float maxSteps = maxSpeed / stepAngle;
இதற்குப் பிறகு, அமைவு செயல்பாட்டில் எல்சிடி, சீரியல், இன்டரப்ட் மற்றும் ஸ்டெப்பர் மோட்டாரை துவக்குகிறோம்
வெற்றிட அமைப்பு () { myStepper.setSpeed (60); சீரியல்.பெஜின் (9600); pinMode (ledPin, OUTPUT); lcd.begin (16,2); lcd.print ("ஸ்பீடோமீட்டர்"); தாமதம் (2000); attachInterrupt (0, RPMCount, RISING); }
இதற்குப் பிறகு, லூப் செயல்பாட்டில் ஆர்.பி.எம் படித்து, வேகத்தைப் பெற ஒரு கணக்கீட்டைச் செய்து, அனலாக் வடிவத்தில் வேகத்தைக் காண்பிப்பதற்காக ஸ்டெப்பர் மோட்டாரை இயக்குவதற்கான படிகளாக மாற்றுகிறோம்.
void loop () { readRPM (); ஆரம் = ((ஆரம் * 2.54) / 100.0); // மீட்டர் எண்ணாக மாற்றும் வேகம் = ((மிதவை) ஆர்.பி.எம் * 60.0 * (2.0 * 3.14 * ஆரம்) / 1000.0); // 60 நிமிடத்தில் RPM, டயர் விட்டம் (2pi r) r ஆரம், கிமீ எண்ணாக மாற்ற 1000 படிகள் = வரைபடம் (வேகம், மின்ஸ்பீட், மேக்ஸ்ஸ்பீட், மினிஸ்டெப்ஸ், மேக்ஸ்ஸ்டெப்ஸ்); if (flag1) { Serial.print (வேகம்); Serial.println ("Kmh"); lcd.setCursor (0,0); lcd.print ("RPM:"); lcd.print (RPM); lcd.print (""); lcd.setCursor (0,1); lcd.print ("வேகம்:"); lcd.print (வேகம்); lcd.print ("கி.மீ / மணி"); கொடி 1 = 0; } int currSteps = படிகள்;int படிகள் = currSteps-preSteps; preSteps = currSteps; myStepper.step (படிகள்); }
RPM ஐக் கணக்கிட இங்கே reapRPM () செயல்பாடு உள்ளது.
int readRPM () { if (REV> = 10 அல்லது மில்லிஸ் ()> = st + 1000) // இது ஒவ்வொரு 10 வாசிப்புகளையும் புதுப்பிக்கும் அல்லது செயலற்ற நிலையில் 1 வினாடி { if (கொடி == 0) கொடி = 1; rpm = (60/2) * (1000 / (மில்லிஸ் () - நேரம்)) * REV / bladesInFan; நேரம் = மில்லிஸ் (); REV = 0; int x = rpm; (x! = 0) { x = x / 10; ஆர்.பி.எம்லன் ++; } Serial.println (rpm, DEC); ஆர்.பி.எம் = ஆர்.பி.எம்; தாமதம் (500); st = மில்லிஸ் (); கொடி 1 = 1; } }
இறுதியாக, பொருளின் புரட்சியை அளவிடுவதற்கு பொறுப்பான குறுக்கீடு வழக்கம் உள்ளது
வெற்றிட RPMCount () { REV ++; if (led == LOW) { led = HIGH; } else { led = LOW; } டிஜிட்டல்ரைட் (லெட் பின், லெட்); }
Arduino ஐப் பயன்படுத்தி அனலாக் ஸ்பீடோமீட்டரை நீங்கள் எவ்வாறு உருவாக்கலாம். இது ஹால் சென்சார் பயன்படுத்தி கட்டமைக்கப்படலாம் மற்றும் ஸ்மார்ட் தொலைபேசியில் வேகத்தைக் காட்டலாம், அதற்கான இந்த ஆர்டுயினோ ஸ்பீடோமீட்டர் டுடோரியலைப் பின்பற்றவும்.
