குறியீட்டை தேடு

பாடம் 7/10: வரி கண்காணிப்பு, பள்ளம் கண்டறிதல் கிரேஸ்கேல் சென்சாரை அளவீடு செய்க ராஸ்பெர்ரி பை பிக்கோ கார்

இந்த பாடம் ஒரு பகுதியாகும்: ராஸ்பெர்ரி பை பைக்கோ 4WD ஸ்மார்ட் கார்

பாடம் 7/10: வரி கண்காணிப்பு, பள்ளம் கண்டறிதல் கிரேஸ்கேல் சென்சாரை அளவீடு செய்க ராஸ்பெர்ரி பை பிக்கோ கார்

ராஸ்பெர்ரி பை பைக்கோ ஸ்மார்ட் கார் பாடத்தின் இந்த ஏழாவது பாடத்தில், கிரேஸ்கேல் சென்சார் தொகுதியைப் பயன்படுத்தி வரி கண்காணிப்பு மற்றும் பாறை விளிம்பு கண்டறிதல் ஆகிய முக்கிய செயல்பாடுகளை ஆராய்கிறோம். இந்த தொகுதி உங்கள் காரின் "கண்களாக" செயல்படுகிறது, இது ஒரு முன்னரே தீர்மானிக்கப்பட்ட பாதையை தானாகவே பின்பற்றவும், ஆபத்தான வீழ்ச்சிகளைத் தவிர்க்கவும் அனுமதிக்கிறது. இந்த திட்டம் துல்லியமான அளவீடுகளுக்கு சென்சாரை அளவீடு செய்வது எப்படி என்பதையும், காரை பாதையில் வைத்திருக்கும் தர்க்கத்தை செயல்படுத்துவதையும் நிரூபிக்கிறது, இதில் பாறை விளிம்பு கண்டறிதலை உருவகப்படுத்தும் ஒரு வேடிக்கையான "Don't Push Me" அம்சம் உள்ளது. அடிப்படை ரிமோட் கண்ட்ரோலுக்கு அப்பால் சென்று சென்சார் வழிகாட்டும் ரோபாட்டிக்ஸ் உலகில் நுழைய விரும்பும் எவருக்கும் இந்த வழிகாட்டி சரியானது.

இந்த தொழில்நுட்பம் வேடிக்கையான DIY திட்டத்திற்கு அப்பால் பல நடைமுறை பயன்பாடுகளைக் கொண்டுள்ளது. இங்கே நீங்கள் கற்கும் கொள்கைகள் உண்மையான உலக தன்னாட்சி அமைப்புகளை உருவாக்குவதற்கான அடிப்படையாகும். உங்களை ஊக்குவிக்க சில யோசனைகள் இங்கே:

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

வன்பொருள் மற்றும் கூறுகள்

இந்த திட்டம் SunFounder Raspberry Pi Pico 4WD கார் கிட்டை அடிப்படையாகக் கொண்டது. இந்த பாடத்திற்கான முக்கிய கூறு கிரேஸ்கேல் சென்சார் தொகுதி ஆகும், இது வரி கண்காணிப்பு மற்றும் பாறை விளிம்பு கண்டறிதல் இரண்டிற்கும் அவசியம். இந்த தொகுதி கீழே உள்ள மேற்பரப்பில் இருந்து பிரதிபலிக்கும் ஒளியின் அளவை அளவிடும் மூன்று சுயாதீன சென்சார்களைக் கொண்டுள்ளது. இந்த தரவு ஒரு கருப்பு கோடு, ஒரு வெள்ளை மேற்பரப்பு மற்றும் ஒரு "பாறை விளிம்பு" அல்லது திறந்த இடத்தை வேறுபடுத்த பயன்படுகிறது. முழு கிட்டில் பைக்கோ கார் சேஸ், மோட்டார்கள் மற்றும் அமைப்பை இயக்க ஒரு பேட்டரி பேக் ஆகியவையும் அடங்கும்.

வயரிங் வழிகாட்டி

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

வீடியோவில் காட்டப்பட்டுள்ள வயரிங் உள்ளமைவு இங்கே (வீடியோவில் 03:01 இல்):

  • கருப்பு கம்பி: பைக்கோவில் உள்ள GND பின்னுடன் இணைக்கவும்.
  • சிவப்பு கம்பி: பைக்கோவில் உள்ள 3.3V பின்னுடன் இணைக்கவும்.
  • மஞ்சள் கம்பி (வலது சென்சார்): GPIO பின் 28 உடன் இணைக்கவும்.
  • பழுப்பு கம்பி (மைய சென்சார்): GPIO பின் 27 உடன் இணைக்கவும்.
  • வெள்ளை/சாம்பல் கம்பி (இடது சென்சார்): GPIO பின் 26 உடன் இணைக்கவும்.

கிரேஸ்கேல் சென்சாரை அளவீடு செய்தல்

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

வீடியோ அளவீடு செயல்முறையை நிரூபிக்கிறது (வீடியோவில் 04:39 இல்). தெளிவான அளவீடுகளைப் பெற சென்சார் தரையில் இருந்து உகந்த உயரத்தில்—சுமார் 11 மில்லிமீட்டர் அல்லது ஒரு சென்டிமீட்டர்—நிலைநிறுத்தப்பட வேண்டும். பொட்டென்டியோமீட்டரை சரிசெய்து மதிப்புகளைக் கவனிப்பதன் மூலம், சிறந்த புள்ளியைக் காணலாம். ஒரு வெள்ளை மேற்பரப்பு (நிறைய ஒளியை பிரதிபலிக்கிறது) மற்றும் ஒரு கருப்பு கோடு (மிகக் குறைவாக பிரதிபலிக்கிறது) ஆகியவற்றுக்கான அளவீடுகளுக்கு இடையே குறிப்பிடத்தக்க வேறுபாடு இருப்பதே குறிக்கோள்.

அளவீடுகள் என்ன அர்த்தம் என்பதற்கான சுருக்கம் இங்கே:

  • வெள்ளை மேற்பரப்பு: அதிக பிரதிபலிப்பு, அதிக சென்சார் மதிப்புகளை ஏற்படுத்துகிறது (எ.கா., சுமார் 20,000).
  • கருப்பு கோடு: குறைந்த பிரதிபலிப்பு, குறைந்த சென்சார் மதிப்புகளை ஏற்படுத்துகிறது (எ.கா., சுமார் 3,000).
  • பாறை விளிம்பு (வெற்று இடம்): பிரதிபலிப்பு இல்லை, மிகக் குறைந்த சென்சார் மதிப்புகளை ஏற்படுத்துகிறது (எ.கா., சுமார் 1,200).

குறியீடு விளக்கம்

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

சென்சாரை சோதித்தல்

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


# இது சோதனை செயல்பாட்டின் கருத்தியல் எடுத்துக்காட்டு
from machine import Pin, ADC
import time

# கிரேஸ்கேல் சென்சார்களுக்கான ADC பின்களை வரையறுக்கவும்
grayscale_pins = [26, 27, 28]
sensors = [ADC(Pin(pin)) for pin in grayscale_pins]

while True:
    # சென்சார்களிலிருந்து மூல 16-பிட் மதிப்புகளைப் படிக்கவும்
    values = [sensor.read_u16() for sensor in sensors]
    print("Left: {} Center: {} Right: {}".format(values[0], values[1], values[2]))
    time.sleep_ms(100)

வரி கண்காணிப்பு தர்க்கம்

வரி கண்காணிப்புக்கு, குறியீடு மூல அனலாக் மதிப்புகளைப் பயன்படுத்தாது. அதற்கு பதிலாக, அவற்றை ஒரு எளிய டிஜிட்டல் நிலைக்கு மாற்றுகிறது: சென்சார் கருப்பு கோட்டிற்கு மேல் இருந்தால் 1, வெள்ளை மேற்பரப்பிற்கு மேல் இருந்தால் 0. இது மூன்று மதிப்புகளின் பட்டியலைத் தரும் ஒரு செயல்பாட்டால் கையாளப்படுகிறது (எ.கா., [0, 1, 0]). முக்கிய கட்டுப்பாட்டு வளையம் பின்னர் காரின் செயல்களைத் தீர்மானிக்க இந்த பட்டியலைப் பயன்படுத்துகிறது.

இந்த தர்க்கம் சென்சார் நிலையை முன்னரே வரையறுக்கப்பட்ட நிபந்தனைகளுடன் ஒப்பிடுவதை அடிப்படையாகக் கொண்டது. எடுத்துக்காட்டாக, நிலை [0, 1, 0] எனில், கார் சரியாக கோட்டின் மீது உள்ளது மற்றும் முன்னோக்கி நகர வேண்டும். நிலை [1, 0, 0] எனில், கார் இடதுபுறம் விலகியுள்ளது மற்றும் அதன் பாதையை வலதுபுறம் சரிசெய்ய வேண்டும். வீடியோ இந்த நிபந்தனைகளை விரிவாக விளக்குகிறது (வீடியோவில் 13:05 இல்), வெவ்வேறு சென்சார் அளவீடுகளின் சேர்க்கைகள் இடதுபுறம் திரும்புதல், வலதுபுறம் திரும்புதல் அல்லது கூர்மையான திருத்தம் போன்ற வெவ்வேறு மோட்டார் கட்டளைகளுக்கு எவ்வாறு ஒத்துப்போகின்றன என்பதைக் காட்டுகிறது.


# இது கோடு பின்தொடர்தல் தர்க்கத்தின் கருத்தியல் எடுத்துக்காட்டு
# 'status' என்பது கிரேஸ்கேல் சென்சாரிலிருந்து [0, 1, 0] போன்ற பட்டியல் என்று கருதுங்கள்

if status == [0, 1, 0]:  # மைய சென்சார் கோட்டின் மீது
    # முன்னோக்கி நகர்த்து
    pass
elif status == [1, 0, 0]:  # இடது சென்சார் கோட்டின் மீது
    # வலதுபுறம் திருப்பு
    pass
elif status == [0, 0, 1]:  # வலது சென்சார் கோட்டின் மீது
    # இடதுபுறம் திருப்பு
    pass
# ... கூர்மையான திருப்பங்களுக்கான பிற நிபந்தனைகள்

நேரடி திட்ட ஆர்ப்பாட்டம்

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

வீடியோ அத்தியாயங்கள்

  • [00:00] கோடு கண்காணிப்பு மற்றும் பாறை கண்டறிதல் அறிமுகம்
  • [03:01] கிரேஸ்கேல் சென்சார் தொகுதியை இணைத்தல்
  • [04:39] கிரேஸ்கேல் சென்சாரை அளவீடு செய்தல்
  • [13:05] கோடு பின்தொடர்தல் தர்க்கத்தைப் புரிந்துகொள்வது
  • [19:43] கோடு கண்காணிப்பு குறியீட்டை சோதித்தல்
  • [24:50] சோதனை பாதையில் நேரடி ஆர்ப்பாட்டம்
கோடு இணைக்கப்படவில்லை.

வளங்கள் மற்றும் மேற்கோள்கள்

இன்னும் எந்த வளங்களும் இல்லை.

கோப்புகள்📁

கோப்புகள் கிடைக்கவில்லை.