அனலாக் டிஜிட்டலாக மாற்றுதல் (அனலாக் ரீட் சீரியல்) - அர்டுடினோ அடிப்படைகள்

சிக்கல்களை அகற்ற எங்கள் கருவியை முயற்சிக்கவும்





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

அனலாக் ரீட் சீரியல்

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



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

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



வன்பொருள் தேவை

Arduino Board

10-கிலோஹாம் பொட்டென்டோமீட்டர்

சுற்று செயல்பாடு

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

பானையின் வெளிப்புற தடங்களில் ஒன்றிலிருந்து கம்பி தரையோ அல்லது பலகையின் எதிர்மறை வரியோடும் ஒதுக்கப்படுகிறது.

மற்ற இலவச தீவிர வெளி முனை குழுவின் + 5 வி உடன் இணைக்கப்படுகிறது.

எஞ்சியிருப்பது பானையின் மைய ஈயமாகும், இது அர்டுயினோ போர்டின் அனலாக் உள்ளீட்டிற்கு நிறுத்தப்படும்.

பானை தண்டு சுழற்றப்படும்போது, ​​சென்டர் ஈயம் மற்றும் வெளிப்புற முனையம் முழுவதும் உள்ள எதிர்ப்பானது உயரத்திலிருந்து கீழாகவும், நேர்மாறாகவும் ஸ்லைடர் கை எந்த பக்கத்தை நெருங்குகிறது என்பதைப் பொறுத்து மாறுகிறது.

எடுத்துக்காட்டாக, ஸ்லைடர் கை + 5 வி ஈயத்தை நோக்கி சுழலும் போது, ​​மைய ஈயம் 5 வி உடன் நெருங்கி 5 வி ஒதுக்கப்பட்ட ஈயத்தைத் தொடும்போது முழு மதிப்பையும் பெற முனைகிறது. இதேபோல், ஸ்லைடர் தண்டு தரையில் பானை ஈயத்தை நோக்கி நகரும்போது, ​​மைய ஈயம் பூஜ்ஜிய திறனை அடைய முனைகிறது.

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

Arduino ஒரு உள் அனலாக்-டு-டிஜிட்டல் மாற்றி சுற்றமைப்புடன் இணைக்கப்பட்டுள்ளது, இது மேலே உள்ள பானை இயக்கத்தை திறம்பட விளக்குகிறது மற்றும் அதை 0 மற்றும் 1023 க்கு இடையில் எண்களாக மாற்றுகிறது.

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

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

எதிர்பார்க்கப்படும் கட்டளை வடிவத்தில் உள்ளது:

சீரியல்.பெஜின் (9600)

பின்னர், உங்கள் குறியீட்டின் முக்கிய சுழற்சியில், பானை தடங்களிலிருந்து பெறப்பட்ட எதிர்ப்பு மதிப்பை (இது 0 மற்றும் 1023 க்கு இடையில் விவாதிக்கப்படும், ஒரு முழு தரவு வகைக்கு ஏற்றது) சரிசெய்ய ஒரு மாறியை நாங்கள் செயல்படுத்துகிறோம்:

int sensValue = அனலாக் ரீட் (A0)

முடிவுக்கு, இந்த தகவலை உங்கள் தொடர் சாளரத்தில் தசம (DEC) மதிப்பாக அச்சிடுக. குறியீட்டின் கடைசி வரியில் இதைச் செயல்படுத்த நீங்கள் Serial.println () கட்டளையைப் பயன்படுத்தலாம்:

Serial.println (சென்சார் மதிப்பு, DEC)

இதற்குப் பிறகு, ஆர்டுயினோ மேம்பாட்டுக் களத்தில் சீரியல் மானிட்டர் தொடங்கப்படும் போதெல்லாம் (நிரலின் தலைப்பில் உள்ள 'பதிவேற்றம்' பொத்தானின் வலது புறத்தில் உள்ள பொத்தானைக் கிளிக் செய்வதன் மூலம் இது செய்யப்படுகிறது).

0-1023 முதல் இயங்கும் இலக்கங்களின் தொடர்ச்சியான சங்கிலியைக் காண்போம், இது பானை தண்டு மாறுபடும் சுழற்சி நிலைக்கு ஒத்திருக்கும்.

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

குறியீடு

/ *
அனலாக் ரீட்ஸீரியல்
முள் 0 இல் அனலாக் உள்ளீட்டைப் படித்து, முடிவை சீரியல் மானிட்டரில் அச்சிடுகிறது.
A0 ஐ பின்னிணைக்க ஒரு பொட்டென்டோமீட்டரின் மைய முள் மற்றும் வெளிப்புற ஊசிகளை + 5V மற்றும் தரையில் இணைக்கவும்.

இந்த எடுத்துக்காட்டு குறியீடு பொது களத்தில் உள்ளது.
* /

// மீட்டமைப்பை அழுத்தும்போது அமைவு வழக்கம் ஒரு முறை இயங்கும்:
வெற்றிட அமைப்பு () {
// வினாடிக்கு 9600 பிட்களில் தொடர் தகவல்தொடர்பு தொடங்க:
சீரியல்.பெஜின் (9600)
}

// லூப் வழக்கம் எப்போதும் மீண்டும் மீண்டும் இயங்கும்:
வெற்றிட சுழற்சி () {
// அனலாக் முள் 0 இல் உள்ளீட்டைப் படியுங்கள்:
int sensValue = அனலாக் ரீட் (A0)
// நீங்கள் படித்த மதிப்பை அச்சிடுக:
Serial.println (சென்சார் மதிப்பு)
தாமதம் (1) // நிலைத்தன்மைக்கான வாசிப்புகளுக்கு இடையில் தாமதம்
}




முந்தைய: ஒரு சுவிட்சின் கண்காணிப்பு நிலை (டிஜிட்டல் ரீட் சீரியல்) - அர்டுயினோ அடிப்படைகள் அடுத்து: 1.25 வி முதல் 120 வி மெயின்கள் சரிசெய்யக்கூடிய மின்னழுத்த சீராக்கி சுற்று