அறிவுறுத்தல்கள் VHDL மோட்டார் வேகக் கட்டுப்பாடு திசை மற்றும் வேகத்தை இடது மற்றும் வலது வேகக் கட்டுப்படுத்தி தீர்மானிக்கிறது
குறிப்பு: இந்தப் பக்கம் ஒரு பெரிய கட்டமைப்பின் ஒரு பகுதியாகும். இங்கே தொடங்குவதை உறுதிசெய்யவும், பெரிய திட்டத்தில் பின்வருபவை எங்கு பொருந்தும் என்பதை நீங்கள் புரிந்துகொள்கிறீர்கள்
முடிந்துவிட்டதுview
மோட்டார் வேகம் மற்றும் திசைக் கட்டுப்பாடு என்பது ஃபோட்டோடெக்டர் ரோபோவின் இரண்டு முக்கிய பிரிவுகளில் ஒன்றாகும், மற்றொன்று ஃபோட்டோடெக்டர் அல்லது லைட் டிடெக்டர் பிரிவு. ஃபோட்டோடெக்டர் பிரிவு ரோபோவின் பார்வையில் கவனம் செலுத்துகிறது, மோட்டார் வேகம் மற்றும் திசைக் கட்டுப்பாட்டு பிரிவு ரோபோவின் இயக்கத்தில் கவனம் செலுத்துகிறது. ஃபோட்டோடெக்டர் பிரிவிலிருந்து கொடுக்கப்பட்ட மோட்டார் வேகம் மற்றும் திசைக் கட்டுப்பாட்டு செயல்முறை தரவு மற்றும் மோட்டார் இயக்கத்தின் வடிவத்தில் ஒரு உடல் வெளியீட்டை அளிக்கிறது.
ஒளியைத் தேடும் ரோபோவின் இடது மற்றும் வலது மோட்டார் இரண்டின் வேகத்தையும் திசையையும் கட்டுப்படுத்துவதே இந்தப் பிரிவின் நோக்கமாகும். இந்த மதிப்புகளைத் தீர்மானிக்க, கேமராவால் பிடிக்கப்பட்ட மற்றும் த்ரெஷோல்டிங் மூலம் செயலாக்கப்பட்ட ஒளியின் அளவு மற்றும் நிலை உங்களுக்குத் தேவைப்படும். ஒவ்வொரு மோட்டார்களிலும் அளவிடப்பட்ட வேகம் உங்களுக்குத் தேவைப்படும். இந்த உள்ளீடுகளிலிருந்து, ஒவ்வொரு மோட்டார்களுக்கும் PWM (பல்ஸ்-அகல மாடுலேஷன்) மதிப்பை நீங்கள் வெளியிட முடியும்.
இதை அடைய, நீங்கள் இந்த VHDL தொகுதிகளை உருவாக்க வேண்டும் (மேலும் கீழே இணைக்கப்பட்டுள்ளது):
- கட்டுப்பாடு
- பிழை கணக்கீடு
- பைனரி மாற்றம்
- ஒளி ஆதாரம் இல்லாதது
இந்த பிரிவுக்கான VHDL குறியீட்டை இங்கே பார்க்கலாம்.
பொருட்கள்
ஐஎஸ்இ டிசைன் சூட் 14.7 ஐக் கொண்டு குறியீட்டைப் பயன்படுத்த பரிந்துரைக்கிறோம், ஏனெனில் இது VHDL இல் குறியீட்டைச் சோதிக்கவும் பயன்படுத்தப்படலாம். இருப்பினும், BASYS 3 இல் குறியீட்டைப் பதிவேற்ற, நீங்கள் Vivado (ver. 2015.4 அல்லது 2016.4) நிறுவ வேண்டும் மற்றும் .xdc நீட்டிப்புடன் தடையை எழுத வேண்டும்.
VHDL மோட்டார் வேகக் கட்டுப்பாடு: திசை மற்றும் வேகத்தை முடிவு செய்யுங்கள், இடது மற்றும் வலது வேகக் கட்டுப்படுத்தி: பக்கம் 1
அறிவுறுத்தல் படி
படி 1: கட்டுப்பாடு
ஒளியைத் தேடும் ரோபோவின் நடத்தையை எவ்வாறு கட்டுப்படுத்துவது என்பதைப் புரிந்து கொள்ள, ஒரு ஒளி மூலத்தைப் பார்க்கும்போது ரோபோவின் விரும்பிய நடத்தையை விளக்குவோம். ஒளி மூலத்தின் நிலை மற்றும் அளவைப் பொறுத்து இந்த நடத்தை கட்டுப்படுத்தப்படும்.
பயன்படுத்தப்படும் அல்காரிதம் ஒரு RC ரோபோ கன்ட்ரோலரைப் போன்றது, ஒரு நெம்புகோல் இடது அல்லது வலதுபுறமாகத் திரும்பலாம், மேலும் மற்றொரு நெம்புகோல் முன்னோக்கி அல்லது பின்னோக்கித் திரும்பலாம்.
ஒளியைத் தேட, ஒளி மூலத்தின் நிலை ரோபோவுக்கு முன்னால் இருந்தால், இந்த ரோபோ ஒரு நேர்கோட்டில் நகர வேண்டும். அதைச் செய்ய, இடது மற்றும் வலது மோட்டார்கள் இரண்டிலும் ஒரே வேகம் வேண்டும். ஒளி ரோபோவின் இடது பக்கத்தில் அமைந்திருந்தால், வலது மோட்டார் இடது மோட்டாரை விட வேகமாக நகர வேண்டும், இதனால் ரோபோ ஒளியை நோக்கி இடதுபுறமாக திரும்ப முடியும். மாறாக, ஒளி ரோபோவின் வலது பக்கத்தில் அமைந்திருந்தால், இடது மோட்டார் வலது மோட்டாரை விட வேகமாக நகர வேண்டும், இதனால் ரோபோ ஒளியை நோக்கி வலதுபுறம் திரும்ப முடியும். இது RC கன்ட்ரோலரின் இடது நெம்புகோலுக்கு ஒப்பானது, அங்கு ரோபோவை இடது, வலது அல்லது நேராக நகர்த்த வேண்டுமா என்பதை நீங்கள் கட்டுப்படுத்தலாம்.
பின்னர், ஒளி மூலமானது தொலைவில் இருந்தால் (சிறிய ஒளி மூலம்) ரோபோ முன்னோக்கி நகர வேண்டும் அல்லது கண்டறியப்பட்ட ஒளி மூலமானது மிக அருகில் இருந்தால் (பெரிய ஒளி மூலம்) பின்னோக்கி நகர்த்த வேண்டும். ரோபோ ஒளி மூலத்திலிருந்து எவ்வளவு தொலைவில் இருக்கிறதோ, அவ்வளவு வேகமாக ரோபோ நகரும் என்றும் நீங்கள் விரும்புகிறீர்கள். இது RC கன்ட்ரோலரின் வலது நெம்புகோலுக்கு ஒப்பானது, அங்கு நீங்கள் முன்னோக்கி நகர்த்த வேண்டுமா அல்லது பின்னோக்கி நகர்த்த விரும்புகிறீர்களா, எவ்வளவு வேகமாக நகர வேண்டும் என்பதை நீங்கள் கட்டுப்படுத்தலாம்.
ஒவ்வொரு மோட்டார்களின் வேகத்திற்கும் நீங்கள் ஒரு கணித சூத்திரத்தைப் பெறலாம், மேலும் -255 முதல் 255 வரையிலான வேக வரம்பைத் தேர்வு செய்கிறோம். எதிர்மறை மதிப்பு என்றால் மோட்டார் பின்னோக்கிச் செல்லும், நேர்மறை மதிப்பு என்றால் மோட்டார் முன்னோக்கித் திரும்பும்.
அதுதான் இந்த ரோபோவின் இயக்கத்திற்கான அடிப்படை அல்காரிதம். இந்த தொகுதி பற்றி மேலும் அறிய, இங்கே கிளிக் செய்யவும்.
படி 2: பிழை கணக்கீடு
மோட்டார்களுக்கான இலக்கு வேகம் மற்றும் திசை ஏற்கனவே உங்களிடம் இருப்பதால், மோட்டார்களின் அளவிடப்பட்ட வேகம் மற்றும் திசையையும் நீங்கள் கணக்கில் எடுத்துக்கொள்ள வேண்டும். அது வேக இலக்கை அடைந்திருந்தால், மோட்டார் அதன் வேகத்தில் மட்டுமே நகர வேண்டும். அது இல்லையென்றால், மோட்டருக்கு அதிக வேகத்தை சேர்க்க விரும்புகிறோம். கட்டுப்பாட்டு கோட்பாட்டில், இது ஒரு மூடிய-லூப் பின்னூட்ட கட்டுப்பாட்டு அமைப்பு என்று அழைக்கப்படுகிறது.
இந்த தொகுதி பற்றி மேலும் அறிய, இங்கே கிளிக் செய்யவும்.
படி 3: பைனரி மாற்றம்
முந்தைய கணக்கீடுகளிலிருந்து, ஒவ்வொரு மோட்டார்களுக்கும் தேவையான நடவடிக்கையை நீங்கள் ஏற்கனவே அறிந்திருக்கிறீர்கள். இருப்பினும், கையொப்பமிடப்பட்ட பைனரியைப் பயன்படுத்தி கணக்கீடுகள் செய்யப்படுகின்றன. இந்த கையொப்பமிடப்பட்ட மதிப்புகளை PWM ஜெனரேட்டரால் படிக்கக்கூடிய ஒரு மதிப்பாக மாற்றுவதே இந்த தொகுதியின் நோக்கமாகும், அவை திசை (கடிகார திசையில் அல்லது எதிரெதிர் திசையில்) மற்றும் வேகம் (0 முதல் 255 வரை) ஆகும். மேலும், மோட்டாரின் பின்னூட்டம் கையொப்பமிடப்படாத பைனரியில் அளவிடப்படுவதால், கையொப்பமிடப்படாத மதிப்புகளை (திசை மற்றும் வேகம்) பிழை கணக்கீடு தொகுதி மூலம் கணக்கிடக்கூடிய கையொப்பமிடப்பட்ட மதிப்பாக மாற்ற மற்றொரு தொகுதி தேவைப்படுகிறது. இந்த தொகுதி பற்றி மேலும் அறிய, இங்கே கிளிக் செய்யவும்.
படி 4: ஒளி மூலங்கள் இல்லாதது
ரோபோவால் வெளிச்சம் கண்டறியப்படும்போது ஒளியைத் தேடும் ரோபோவை உருவாக்கியுள்ளீர்கள். ஆனால் ரோபோ ஒளியைக் கண்டறியாதபோது என்ன நடக்கும்? அத்தகைய நிலை இருக்கும்போது என்ன செய்ய வேண்டும் என்பதை ஆணையிடுவதே இந்த தொகுதியின் நோக்கம்.
ரோபோவை சுழற்றுவதுதான் எளிதான வழி மற்றும் ஒளி மூலத்தைத் தேடுவது. குறிப்பிட்ட எண்ணிக்கையிலான வினாடிகளுக்குச் சுழற்றிய பிறகும், ரோபோ இன்னும் ஒளி மூலத்தைக் கண்டுபிடிக்கவில்லை என்றால், ஆற்றலைச் சேமிப்பதற்காக, ரோபோ நகர்வதை நிறுத்த வேண்டும். மற்றொரு செட் எண்ணிக்கையிலான வினாடிகளுக்குப் பிறகு, ஒளியைத் தேட ரோபோ மீண்டும் அந்த இடத்தில் சுழல வேண்டும். இந்த தொகுதி பற்றி மேலும் அறிய, இங்கே கிளிக் செய்யவும்.
படி 5: இது எப்படி வேலை செய்கிறது
இந்த விளக்கத்திற்கு மேலே உள்ள படத்தைப் பார்க்கவும். இந்த அறிவுறுத்தலின் தொடக்கத்தில் குறிப்பிட்டுள்ளபடி, நுழைவுப் பிரிவிலிருந்து "அளவு" மற்றும் "நிலை" உள்ளீடுகள் உங்களுக்குத் தேவைப்படும். இந்த உள்ளீடுகள் செல்லுபடியாகும் என்பதை உறுதிசெய்ய (எ.காample, நீங்கள் அளவு = 0 ஐப் பெறும்போது, அளவு உண்மையிலேயே பூஜ்ஜியமாகும், ஏனெனில் கேமரா ஒளியைக் கண்டறியவில்லை, ஆனால் கேமரா இன்னும் தொடங்கப்படுவதால் அல்ல) உங்களுக்கு சில வகையான காட்டி தேவைப்படும், அதை நாங்கள் "ரெடி" என்று அழைக்கிறோம். இந்தத் தரவு ஒவ்வொரு மோட்டரின் இலக்கு வேகத்தையும் (9 பிட்கள், கையொப்பமிடப்பட்டது) தீர்மானிக்க கட்டுப்பாட்டால் (Ctrl. vhd) செயலாக்கப்படும்.
மோட்டாரில் இன்னும் நிலையான வெளியீட்டிற்கு, நீங்கள் ஒரு மூடிய-லூப் அமைப்பில் கருத்துகளைப் பயன்படுத்த விரும்புகிறீர்கள். இதற்கு மோட்டார் வேக அளவீட்டுப் பிரிவிலிருந்து ஒவ்வொரு மோட்டரின் உள்ளீடுகள்”திசை” மற்றும் “வேகம்” தேவைப்படுகிறது. இந்த உள்ளீடுகளை உங்கள் கணக்கீடுகளில் சேர்க்க விரும்புவதால், இந்த கையொப்பமிடாத மதிப்புகளை 9-பிட் கையொப்பமிடப்பட்ட பைனரியாக மாற்ற வேண்டும். கையொப்பமிடப்படாத பைனரி மாற்றி (US2S.vhd) மூலம் இது செய்யப்படுகிறது.
பிழைக் கணக்கீடு (பிழை. vhd) ஒவ்வொரு மோட்டருக்கான செயலைத் தீர்மானிக்க இலக்கு வேகத்திலிருந்து அளவிடப்பட்ட வேகத்தைக் கழிப்பதாகும். இதன் பொருள் இரண்டும் ஒரே மதிப்பைக் கொண்டிருக்கும் போது, கழித்தல் பூஜ்ஜியமாக மாறும் மற்றும் மோட்டார் அதன் வேகத்தில் மட்டுமே நகரும். ரோபோ இலக்கின் வேகத்தை வேகமாக அடையும் வகையில் பெருக்கல் காரணியையும் நீங்கள் சேர்க்கலாம்.
மோட்டார் கன்ட்ரோலருக்கு ஒவ்வொரு மோட்டரின் வேகமும் திசையும் தேவைப்படுவதால், நீங்கள் செயலின் கையொப்பமிடப்பட்ட மதிப்புகளை இரண்டு தனித்தனி கையொப்பமிடாத மதிப்புகளாக மொழிபெயர்க்க வேண்டும்: வேகம் (1 பிட்) மற்றும் திசை (8 பிட்கள்). இது கையொப்பமிடப்படாத பைனரி மாற்றி (S2US.vhd) மூலம் செய்யப்படுகிறது, மேலும் இது மோட்டார் கட்டுப்பாட்டுப் பிரிவிற்கு உள்ளீடுகளாக மாறும்.
ஒளியைக் கண்டறியாதபோது என்ன செய்ய வேண்டும் என்பதைத் தீர்மானிக்க ஒரு தொகுதியையும் சேர்த்துள்ளோம் (ஒளி கவுண்டர் இல்லை. Bhd). இந்த தொகுதி அடிப்படையில் ஒரு கவுண்டர் என்பதால், ரோபோ எவ்வளவு நேரம் சுழற்ற வேண்டும் அல்லது இடத்தில் இருக்க வேண்டும் என்பதை இது கணக்கிடும். இது ரோபோ தனக்கு முன்னால் இருப்பதைக் காட்டிலும் அதன் சூழலை "பார்ப்பதை" உறுதி செய்யும், மேலும் எந்த ஒளி மூலமும் உண்மையில் கிடைக்காதபோது பேட்டரி சக்தியைச் சேமிக்கும்.
படி 6: இணைக்கவும் Files
இணைக்க files, ஒவ்வொரு தொகுதியிலிருந்தும் சிக்னல்களை இணைக்க வேண்டும். இதைச் செய்ய, நீங்கள் ஒரு புதிய உயர் மட்ட தொகுதியை உருவாக்க வேண்டும் file. முந்தைய தொகுதிகளின் உள்ளீடுகள் மற்றும் வெளியீடுகளை கூறுகளாகச் செருகவும், இணைப்புகளுக்கான சிக்னல்களைச் சேர்க்கவும் மற்றும் ஒவ்வொரு போர்ட்டையும் தொடர்புடைய ஜோடிக்கு ஒதுக்கவும். மேலே உள்ள விளக்கத்தில் உள்ள இணைப்புகளைப் பார்க்கவும், மேலும் இங்கே குறியீட்டைப் பார்க்கவும்.
படி 7: சோதிக்கவும்
முழு குறியீட்டையும் நீங்கள் முடித்த பிறகு, உங்கள் குறியீடு பலகையில் பதிவேற்றும் முன் செயல்படுகிறதா என்பதை நீங்கள் தெரிந்து கொள்ள வேண்டும், குறிப்பாக குறியீட்டின் சில பகுதிகள் வெவ்வேறு நபர்களால் உருவாக்கப்படலாம். இதற்கு டெஸ்ட்பெஞ்ச் தேவை, அங்கு நீங்கள் போலி மதிப்புகளை உள்ளீடு செய்து, குறியீடு செயல்படுகிறதா என்று பார்க்க வேண்டும். ஒவ்வொரு தொகுதியையும் சோதிப்பதன் மூலம் நீங்கள் ஓய்வெடுக்கலாம், மேலும் அவை அனைத்தும் சரியாக வேலை செய்தால், நீங்கள் மேல்-நிலை தொகுதியை சோதிக்கலாம்.
படி 8: வன்பொருளில் இதை முயற்சிக்கவும்
உங்கள் கணினியில் உங்கள் குறியீடு சோதிக்கப்பட்ட பிறகு, உண்மையான வன்பொருளில் குறியீட்டைச் சோதிக்கலாம். நீங்கள் தடை செய்ய வேண்டும் file விவாடோவில் (.xdc file BASYS க்கு 3) எந்த உள்ளீடுகள் மற்றும் வெளியீடுகள் எந்த துறைமுகங்களுக்குச் செல்கின்றன என்பதைக் கட்டுப்படுத்த.
முக்கிய உதவிக்குறிப்பு: மின் கூறுகள் மின்னோட்டம் அல்லது தொகுதியின் அதிகபட்ச மதிப்பைக் கொண்டிருக்கும் கடினமான வழியை நாங்கள் கற்றுக்கொண்டோம்tages. மதிப்புகளுக்கான தரவுத் தாளைப் பார்க்கவும். PMOD HB5க்கு, தொகுதியை அமைக்க மறக்காதீர்கள்tagமின் மூலத்திலிருந்து 12 வோல்ட் (இது தேவையான தொகுதிtagமோட்டருக்கு e), மற்றும் மோட்டார் நகர்த்துவதற்கு தேவையான அளவு மின்னோட்டம்.
படி 9: இதை மற்ற பகுதிகளுடன் இணைக்கவும்
முந்தைய படிகள் வெற்றிகரமாக இருந்தால், ரோபோவில் பதிவேற்றப்படும் இறுதிக் குறியீட்டிற்கான குறியீட்டை மற்ற குழுக்களுடன் இணைக்கவும். பிறகு, வோய்லா! ஒளியைத் தேடும் ரோபோவை வெற்றிகரமாக உருவாக்கிவிட்டீர்கள்.
படி 10: பங்களிப்பாளர்கள்
இடமிருந்து வலமாக:
- அன்டோனியஸ் கிரிகோரியஸ் டெவன் ரிவால்டி
- பெலிக்ஸ் விகுனா
- நிக்கோலஸ் சஞ்சயா
- ரிச்சர்ட் மெடியாண்டோ
மிகவும் அருமை: VHDL மோட்டார் வேகக் கட்டுப்பாடு: திசை மற்றும் வேகத்தை முடிவு செய்யுங்கள், இடது மற்றும் வலது வேகக் கட்டுப்படுத்தி: பக்கம் 6
மறுமைக்கு நன்றிviewஇங்! இந்த திட்டம் உண்மையில் ஒரு வகுப்பு திட்டத்தின் ஒரு பகுதி மட்டுமே (BASYS 3 போர்டு மற்றும் OV7670 கேமராவுடன் கூடிய ஒளி தேடும் ரோபோ), எனவே வகுப்பின் அறிவுறுத்தலுக்கு விரைவில் இணைப்பைச் சேர்ப்பேன்!
அருமை: எல்லாவற்றையும் ஒன்றாகப் பார்க்க ஆவலுடன் காத்திருக்கிறேன்.
ஆவணங்கள் / ஆதாரங்கள்
![]() |
அறிவுறுத்தல்கள் VHDL மோட்டார் வேகக் கட்டுப்பாடு திசை மற்றும் வேகத்தை இடது மற்றும் வலது வேகக் கட்டுப்படுத்தி தீர்மானிக்கிறது [pdf] வழிமுறைகள் VHDL மோட்டார் வேகக் கட்டுப்பாடு திசை மற்றும் வேகத்தை இடது மற்றும் வலது வேகக் கட்டுப்படுத்தி, VHDL மோட்டார் வேகம், கட்டுப்பாடு தீர்மானிக்கும் திசை மற்றும் வேகம் இடது மற்றும் வலது வேகக் கட்டுப்படுத்தி |