- அகச்சிவப்பு துளையிடப்பட்ட ஆப்டிகல் எல்எம் -393 ஸ்பீடு சென்சார் தொகுதி
- கட்டணத்தையும் கணக்கிட பயணிக்கும் வேகத்தையும் தூரத்தையும் அளவிடுதல்
இன்று டிஜிட்டல் மீட்டர்கள் ஒவ்வொரு துறையிலும் அனலாக் மீட்டர்களை அதன் மின்சார மீட்டர் அல்லது டாக்ஸி கட்டணம் மீட்டர் என்று மாற்றுகின்றன. அதற்கு முக்கிய காரணம் அனலாக் மீட்டர்களில் இயந்திர பாகங்கள் உள்ளன, அவை நீண்ட நேரம் பயன்படுத்தும்போது அணிய முனைகின்றன, அவை டிஜிட்டல் மீட்டர்களைப் போல துல்லியமாக இல்லை.
இதற்கு ஒரு சிறந்த எடுத்துக்காட்டு அனலாக் ஸ்பீடோமீட்டர் மற்றும் ஓடோமீட்டர் ஆகும், இது பழைய மோட்டார் பைக்குகளில் வேகத்தையும் பயண தூரத்தையும் அளவிட பயன்படுகிறது. அவை பினியன் மற்றும் ரேக் ஏற்பாடு என்று அழைக்கப்படும் ஒரு சிறப்பு பாகங்களைக் கொண்டுள்ளன, இதில் சக்கரம் சுழலும் போது ஸ்பீடோமீட்டரின் முள் சுழற்ற ஒரு கேபிள் பயன்படுத்தப்படுகிறது. இது நீண்ட காலத்திற்கு பயன்படுத்தும் போது தேய்ந்து போகும், மேலும் மாற்று மற்றும் பராமரிப்பு தேவை.
டிஜிட்டல் மீட்டரில், இயந்திர பாகங்களைப் பயன்படுத்துவதற்குப் பதிலாக, ஆப்டிகல் இன்டரப்டர் அல்லது ஹால் சென்சார் போன்ற சில சென்சார்கள் வேகம் மற்றும் தூரத்தைக் கணக்கிடப் பயன்படுத்தப்படுகின்றன. இது அனலாக் மீட்டர்களை விட மிகவும் துல்லியமானது மற்றும் நீண்ட காலத்திற்கு எந்த பராமரிப்பும் தேவையில்லை. வெவ்வேறு சென்சார்களைப் பயன்படுத்தி பல டிஜிட்டல் ஸ்பீடோமீட்டர் திட்டங்களை நாங்கள் முன்பு உருவாக்கியுள்ளோம்:
- Arduino மற்றும் செயலாக்க Android பயன்பாட்டைப் பயன்படுத்தி DIY ஸ்பீடோமீட்டர்
- பி.ஐ.சி மைக்ரோகண்ட்ரோலரைப் பயன்படுத்தி டிஜிட்டல் ஸ்பீடோமீட்டர் மற்றும் ஓடோமீட்டர் சர்க்யூட்
- LM393 சென்சார் (H206) ஐப் பயன்படுத்தி மொபைல் ரோபோக்களுக்கான வேகம், தூரம் மற்றும் கோண அளவீட்டு
இன்று, இந்த டுடோரியலில் Arduino ஐப் பயன்படுத்தி டிஜிட்டல் டாக்ஸி கட்டணம் மீட்டரின் முன்மாதிரி ஒன்றை உருவாக்குவோம். இந்த திட்டம் டாக்ஸியின் சக்கரம் பயணிக்கும் வேகத்தையும் தூரத்தையும் கணக்கிட்டு தொடர்ந்து 16x2 எல்சிடி டிஸ்ப்ளேயில் காண்பிக்கும். பயணித்த தூரத்தின் அடிப்படையில் நாம் புஷ் பொத்தானை அழுத்தும்போது கட்டணம் தொகையை உருவாக்குகிறது.
படத்திற்கு கீழே டிஜிட்டல் டாக்ஸி மீட்டர் திட்டத்தின் முழுமையான அமைப்பைக் காட்டுகிறது

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

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

இந்த சென்சார் மூலம் ஒரு ஸ்லாட்டட் டிஸ்க் (என்கோடர் வீல்) பயன்படுத்தப்படுகிறது, அது ஒரு மோட்டருடன் இணைக்கப்படலாம் மற்றும் சக்கரம் மோட்டருடன் சுழலும் போது ஐஆர் எல்இடி மற்றும் ஃபோட்டோட்ரான்சிஸ்டருக்கு இடையிலான ஒளி கற்றை குறுக்கிடுகிறது, இது வெளியீட்டை ஆன் மற்றும் ஆஃப் செய்கிறது (பருப்பு வகைகளை உருவாக்குதல்).
இதனால் மூலத்திற்கும் சென்சாருக்கும் இடையில் குறுக்கீடு இருக்கும்போது அது உயர் வெளியீட்டை உருவாக்குகிறது (எந்தவொரு பொருளும் இடையில் வைக்கப்படும் போது) மற்றும் எந்த பொருளும் வைக்கப்படாதபோது குறைந்த வெளியீட்டை உருவாக்குகிறது. தொகுதியில் ஆப்டிகல் குறுக்கீடு ஏற்படுவதைக் குறிக்க எல்.ஈ.டி உள்ளது.
இந்த தொகுதி LM393 ஒப்பீட்டாளர் ஐசியுடன் வருகிறது, இது OUTPUT இல் துல்லியமான உயர் மற்றும் குறைந்த சமிக்ஞைகளை உருவாக்க பயன்படுகிறது. இதனால் இந்த தொகுதி சில நேரங்களில் எல்எம் 393 ஸ்பீடு சென்சார் என அழைக்கப்படுகிறது.
கட்டணத்தையும் கணக்கிட பயணிக்கும் வேகத்தையும் தூரத்தையும் அளவிடுதல்
சுழற்சியின் வேகத்தை அளவிட, குறியாக்கி சக்கரத்தில் இருக்கும் இடங்களின் எண்ணிக்கையை நாம் அறிந்து கொள்ள வேண்டும். என்னிடம் ஒரு குறியாக்கி சக்கரம் உள்ளது, அதில் 20 இடங்கள் உள்ளன. அவை ஒரு முழுமையான சுழற்சியைச் சுழற்றும்போது, வெளியீட்டில் 20 பருப்பு வகைகள் உள்ளன. எனவே வேகத்தைக் கணக்கிட நமக்கு ஒரு வினாடிக்கு உற்பத்தி செய்யப்படும் பருப்பு வகைகள் தேவை.
உதாரணத்திற்கு
ஒரு நொடியில் 40 பருப்பு வகைகள் இருந்தால், பிறகு
வேகம் = நூ. பருப்பு வகைகள் / இடங்களின் எண்ணிக்கை = 40/20 = 2 ஆர்.பி.எஸ் (வினாடிக்கு புரட்சி)
RPM இல் வேகத்தைக் கணக்கிடுவதற்கு (நிமிடத்திற்கு புரட்சிகள்) 60 உடன் பெருக்கவும்.
RPM = 2 X 60 = 120 RPM இல் வேகம் (நிமிடத்திற்கு புரட்சிகள்)
தூரத்தை அளவிடுதல்
சக்கரம் பயணிக்கும் தூரத்தை அளவிடுவது மிகவும் எளிது. தூரத்தை கணக்கிடுவதற்கு முன், சக்கரத்தின் சுற்றளவு அறியப்பட வேண்டும்.
சக்கரத்தின் சுற்றளவு = π * d
எங்கே d என்பது சக்கரத்தின் விட்டம்.
Of இன் மதிப்பு 3.14 ஆகும்.
எனக்கு 6.60 செ.மீ விட்டம் கொண்ட ஒரு சக்கரம் (ஆர்.சி கார் சக்கரம்) உள்ளது, எனவே சுற்றளவு (20.7 செ.மீ).
எனவே பயணித்த தூரத்தைக் கணக்கிட, சுற்றளவுடன் கண்டறியப்பட்ட பருப்பு வகைகளின் எண்ணிக்கையை பெருக்கவும்.
பயணித்த தூரம் = சக்கரத்தின் சுற்றளவு x (பருப்பு வகைகள் / இடங்களின் எண்ணிக்கை)
எனவே சுற்றளவு 20.7cm இன் ஒரு சக்கரம் குறியாக்கி சக்கரத்தின் ஒரு சுழற்சியான 20 பருப்புகளை எடுக்கும்போது, சக்கரத்தில் பயணிக்கும் தூரம் கணக்கிடப்படுகிறது
பயணித்த தூரம் = 20.7 x (20/20) = 20.7cm
மீட்டரில் உள்ள தூரத்தை கணக்கிட, செ.மீ மதிப்பில் உள்ள தூரத்தை 100 ஆல் வகுக்கவும்.
குறிப்பு: இது ஒரு சிறிய ஆர்.சி கார் சக்கரம், நிகழ்நேரத்தில் கார்கள் இதை விட பெரிய சக்கரங்களைக் கொண்டுள்ளன. எனவே இந்த டுடோரியலில் சக்கரத்தின் சுற்றளவு 230cm ஆக இருக்கும் என்று கருதுகிறேன்.
பயணித்த தூரத்தின் அடிப்படையில் கட்டணத்தை கணக்கிடுகிறது
மொத்த கட்டணத் தொகையைப் பெற, கட்டண விகிதத்துடன் (தொகை / மீட்டர்) பயணித்த தூரத்தை பெருக்கவும்.
Timer1.initialize (1000000); Timer1.attachInterrupt (timerIsr);
அடுத்து இரண்டு வெளிப்புற குறுக்கீடுகளை இணைக்கவும். முதல் குறுக்கீடு Arduino pin 2 ஐ குறுக்கீடு முள் ஆக மாற்றுகிறது மற்றும் முள் 2 இல் RISING (LOW TO HIGH) கண்டறியப்படும்போது ISR (count) ஐ அழைக்கிறது. இந்த முள் 2 வேக சென்சார் தொகுதியின் D0 வெளியீட்டில் இணைக்கப்பட்டுள்ளது.
இரண்டாவதாக Arduino pin 3 ஐ குறுக்கீடு முள் ஆக்குகிறது மற்றும் பின் 3 இல் HIGH கண்டறியப்பட்டால் ISR (generatefare) என்று அழைக்கிறது. இந்த முள் புஷ் டவுன் மின்தடையுடன் புஷ் பொத்தானுடன் இணைக்கப்பட்டுள்ளது.
attachInterrupt (DigitalPinToInterrupt (2), எண்ணிக்கை, RISING); attachInterrupt (DigitalPinToInterrupt (3), generatefare , HIGH);
5. அடுத்து நாம் இங்கே பயன்படுத்திய ஐ.எஸ்.ஆர் பற்றி பார்ப்போம்:
முள் 2 இல் (வேக சென்சாருடன் இணைக்கப்பட்டுள்ளது) ஒரு ரைசிங் (LOW TO HIGH) நிகழும்போது ISR1- count () ISR என அழைக்கப்படுகிறது.
வெற்றிட எண்ணிக்கை () // வேக சென்சார் { கவுண்டர் ++ இலிருந்து கணக்கீடுகளுக்கான ஐ.எஸ்.ஆர் ; // எதிர் மதிப்பை ஒரு சுழற்சி மூலம் அதிகரிக்கவும் ++; // சுழற்சி மதிப்பை ஒரு தாமதத்தால் அதிகரிக்கவும் (10); }
ISR2- timerIsr () ISR ஒவ்வொரு விநாடிக்கும் அழைக்கப்படுகிறது மற்றும் ISR க்குள் இருக்கும் அந்த வரிகளை இயக்கவும்.
void timerIsr () { detachInterrupt (DigitalPinToInterrupt (2)); Timer1.detachInterrupt (); lcd.clear (); மிதவை வேகம் = (எதிர் / 20.0) * 60.0; மிதவை சுழற்சிகள் = 230 * (சுழற்சி / 20); rotationinm = சுழற்சிகள் / 100; lcd.setCursor (0,0); lcd.print ("Dist (m):"); lcd.print (rotationinm); lcd.setCursor (0,1); lcd.print ("வேகம் (RPM):"); lcd.print (வேகம்); எதிர் = 0; int அனலாக் = அனலாக் ரீட் (A0); int motorspeed = வரைபடம் (அனலாக், 0,1023,0,255); அனலாக்ரைட் (5, மோட்டார்ஸ்பீட்); Timer1.attachInterrupt (timerIsr); attachInterrupt (DigitalPinToInterrupt (2), எண்ணிக்கை, RISING); }
இந்த செயல்பாட்டில் முதலில் டைமர் 1 மற்றும் இன்டரப்ட் பின் 2 ஐ முதலில் பிரிக்கும் கோடுகள் உள்ளன, ஏனெனில் ஐ.எஸ்.ஆருக்குள் எல்.சி.டி அச்சு அறிக்கைகள் உள்ளன.
RPM இல் SPEED ஐக் கணக்கிடுவதற்கு நாம் குறியீட்டிற்குக் கீழே பயன்படுத்துகிறோம், அங்கு 20.0 என்பது குறியாக்கி சக்கரத்தில் முன்னமைக்கப்பட்ட இடங்களின் எண்ணிக்கை.
மிதவை வேகம் = (எதிர் / 20.0) * 60.0;
குறியீட்டிற்கு கீழே உள்ள தூரத்தை கணக்கிடுவதற்கு பயன்படுத்தப்படுகிறது:
மிதவை சுழற்சிகள் = 230 * (சுழற்சி / 20);
இங்கே சக்கரத்தின் சுற்றளவு 230cm ஆக கருதப்படுகிறது (இது நிகழ்நேர கார்களுக்கு சாதாரணமானது என்பதால்)
அடுத்து தூரத்தை 100 ஆல் வகுப்பதன் மூலம் மீ தூரத்தை மாற்றவும்
rotationinm = சுழற்சிகள் / 100;
அதன் பிறகு எல்சிடி டிஸ்ப்ளேயில் ஸ்பீட் மற்றும் டிஸ்டான்ஸ் ஆகியவற்றைக் காண்பிப்போம்
lcd.setCursor (0,0); lcd.print ("Dist (m):"); lcd.print (rotationinm); lcd.setCursor (0,1); lcd.print ("வேகம் (RPM):"); lcd.print (வேகம்);
முக்கியமானது: நாம் கவுண்டரை 0 ஆக மீட்டமைக்க வேண்டும், ஏனென்றால் வினாடிக்கு கண்டறியப்பட்ட பல பிளஸ்களைப் பெற வேண்டும், எனவே இந்த வரியைப் பயன்படுத்துகிறோம்
எதிர் = 0;
அடுத்து அனலாக் முள் A0 ஐப் படித்து அதை டிஜிட்டல் மதிப்பாக (0 முதல் 1023 வரை) மாற்றவும், மேலும் அந்த மதிப்புகளை PWM வெளியீட்டிற்கு 0-255 ஆக வரைபடமாக்கவும் (மோட்டரின் வேகத்தை அமைத்தல்) இறுதியாக ULN2003 உடன் இணைக்கப்பட்டுள்ள அனலாக்ரைட் செயல்பாட்டைப் பயன்படுத்தி அந்த PWM மதிப்புகளை எழுதவும் மோட்டார் ஐ.சி.
int அனலாக் = அனலாக் ரீட் (A0); int motorspeed = வரைபடம் (அனலாக், 0,1023,0,255); அனலாக்ரைட் (5, மோட்டார்ஸ்பீட்);
ஐ.எஸ்.ஆர் 3: ஜெனரேட்ஃபேர் () ஐ.எஸ்.ஆர் பயணித்த தூரத்தின் அடிப்படையில் கட்டணத் தொகையை உருவாக்க பயன்படுகிறது. குறுக்கீடு முள் 3 கண்டறியப்பட்டால் இந்த ஐ.எஸ்.ஆர் அழைக்கப்படுகிறது (மிகுதி பொத்தானை அழுத்தும்போது). இந்த செயல்பாடு முள் 2 இல் உள்ள குறுக்கீட்டைக் கண்டறிந்து டைமர் குறுக்கிட்டு பின்னர் எல்சிடியை அழிக்கிறது.
void generatefare () { detachInterrupt (DigitalPinToInterrupt (2)); 2 Timer1.detachInterrupt () இல் முள் ; lcd.clear (); lcd.setCursor (0,0); lcd.print ("FARE Rs:"); மிதவை ரூபாய் = சுழற்சிஇம் * 5; lcd.print (ரூபாய்); lcd.setCursor (0,1); lcd.print ("மீட்டருக்கு ரூ.5"); }
பயணித்த தூரம் 5 உடன் பெருக்கப்பட்ட பிறகு (INR 5 / மீட்டருக்கு 5 ஐப் பயன்படுத்தினேன்). உங்கள் விருப்பத்திற்கு ஏற்ப நீங்கள் மாறலாம்.
மிதவை ரூபாய் = சுழற்சிஇம் * 5;
அளவு மதிப்பைக் கணக்கிட்ட பிறகு அதை அர்டுயினோவுடன் இணைக்கப்பட்ட எல்சிடி டிஸ்ப்ளேயில் காண்பிக்கும்.
lcd.setCursor (0,0); lcd.print ("FARE Rs:"); lcd.print (ரூபாய்); lcd.setCursor (0,1); lcd.print ("மீட்டருக்கு ரூ.5");
முழுமையான குறியீடு மற்றும் ஆர்ப்பாட்டம் வீடியோ கீழே கொடுக்கப்பட்டுள்ளது.
துல்லியம், வலிமை மற்றும் ஆண்ட்ராய்டு பயன்பாடு, டிஜிட்டல் கட்டணம் போன்ற பல அம்சங்களைச் சேர்ப்பதன் மூலம் இந்த முன்மாதிரியை மேலும் மேம்படுத்தலாம் மற்றும் அதை ஒரு தயாரிப்பாக உருவாக்கலாம்.
