ஆதாயங்கள்:
- AI இன் உதவியுடன் முன்னோக்கி/தலைகீழ் இயக்கவியல் மற்றும் பாதை திட்டமிடல் சிக்கல்களை அமைக்க மற்றும் தீர்க்கும் திறன்
- ரோபோ கூட்டு வரம்புகள், வேகம் மற்றும் முடுக்கம் கட்டுப்பாடுகளை உடனுக்குடன் வழங்குவதன் மூலம் பாதுகாப்பான சுற்றுப்பாதையை உருவாக்கும் திறன்
- AI ஆல் உற்பத்தி செய்யப்படும் இயக்கவியல் மற்றும் பாதை வெளியீட்டை எண் மற்றும் உடல் ரீதியாக சரிபார்க்கும் திறன்
ஒரு ரோபோ கையின் முடிவில் உள்ள கிரிப்பரை ஒரு குறிப்பிட்ட நோக்குநிலையில் விண்வெளியில் ஒரு குறிப்பிட்ட புள்ளிக்கு கொண்டு வருதல்; இது எளிமையானதாகத் தெரிகிறது, ஆனால் அதன் பின்னால் இயக்கவியல் சமன்பாடுகள், கூட்டு வரம்புகள், ஒருமைப்பாடுகள் மற்றும் பாதை திட்டமிடல் உள்ளன. இங்கே, மெகாட்ரானிக்ஸ் பொறியாளர் முக்கோணவியல், நேரியல் இயற்கணிதம் மற்றும் கட்டுப்பாட்டுக் கோட்பாடு ஆகியவற்றை ஒன்றாகப் பயன்படுத்துகிறார். இந்த செயல்பாட்டில் செயற்கை நுண்ணறிவு ஒரு சக்திவாய்ந்த உதவியாகும்: இது முன்னோக்கி இயக்கவியல் சமன்பாடுகளை நிறுவலாம், தலைகீழ் இயக்கவியலுக்கான தீர்வு அணுகுமுறைகளை பரிந்துரைக்கலாம், வேகம்/முடுக்கம் தடைகளுக்கு ஏற்ப ஒரு பாதையை அளவுருவாக மாற்றலாம். இருப்பினும், ரோபாட்டிக்ஸ் என்பது மெகாட்ரானிக்ஸ் துறையில் அதிக உடல் ஆபத்து உள்ள பகுதிகளில் ஒன்றாகும்; AI ஆல் உருவாக்கப்பட்ட கோண வரிசை சரிபார்ப்பு இல்லாமல் ரோபோவுக்கு அனுப்பப்பட்டால், கை தன்னைத்தானே, சுற்றுச்சூழலை அல்லது இயக்குநரைத் தாக்கக்கூடும். AI உடன் இயக்கவியல் மற்றும் பாதைத் திட்டமிடலை எவ்வாறு அமைப்பது மற்றும் சரிபார்ப்பது என்பதை இந்த யூனிட்டில் பார்ப்போம்.
முன்னோக்கி மற்றும் தலைகீழ் இயக்கவியல்
முன்னோக்கி இயக்கவியல் (FK): கூட்டுக் கோணங்கள் அறியப்பட்டால், இறுதி-விளைவின் நிலை மற்றும் நோக்குநிலையைக் கண்டறிதல். ஒரே ஒரு தீர்வு உள்ளது, அது நேரடியானது.
தலைகீழ் இயக்கவியல் (IK): இறுதிச் செயல்பாட்டின் விரும்பிய நிலை அறியப்பட்டால், இதை வழங்கும் கூட்டுக் கோணங்களைக் கண்டறிதல். இது பொதுவாக ஒன்றுக்கும் மேற்பட்ட தீர்வுகளைக் கொண்டுள்ளது (முழங்கை மேல்/கீழ் போன்றவை), சில சமயங்களில் தீர்வுகள் இல்லை (அடைய முடியாத புள்ளி), சில சமயங்களில் அது எல்லையற்ற தீர்வுகளைக் கொண்டுள்ளது (ஒருமை).
கருத்து
உள்ளீடு
வெளியீடு
தீர்வுகளின் எண்ணிக்கை
முன்னோக்கி இயக்கவியல்
கூட்டு கோணங்கள்
தீவிர நிலை/நோக்குநிலை
ஒற்றை
தலைகீழ் இயக்கவியல்
தீவிர நிலை/நோக்குநிலை
கூட்டு கோணங்கள்
பல/இல்லை/முடிவற்ற
இரண்டு-கூட்டு பிளானர் கைக்கு, தலைகீழ் இயக்கவியலை AI இல் அமைக்கலாம் மற்றும் பின்வருமாறு கைமுறையாக சரிபார்க்கலாம்:
npdef inverse_kinematik_2r(x, y, L1, L2) ஆக நம்பியை இறக்குமதி செய்க: """2-கூட்டு பிளானர் ஆர்முக்கான IK. ரேடியன்களில் கோணங்களைத் தரும் (முழங்கை-கீழ் தீர்வு).""" r2 = x**2 + y**2 # அணுகல் சோதனை: பணியிடத்தில் உள்ள புள்ளியா? np.sqrt(r2) > (L1 + L2) அல்லது np.sqrt(r2) < abs(L1 - L2): மதிப்பை உயர்த்தினால் ("புள்ளி அணுகக்கூடிய பணியிடத்திற்கு வெளியே உள்ளது") cos_t2 = (r2 - L1**2 - L2**2) / (2 * L1 * L2) cospt_ (2 * L1 * L2) cospt_L2) -1.0, 1.0) # numericalsecurity t2 = np.arccos(cos_t2) # எல்போ டவுன் t1 = np.arctan2(y, x) - np.arctan2(L2*np.sin(t2), L1 + L2*np.cos(t.1)de), np.degrees(t2)# சரிபார்ப்பு: L1=L2=1, இலக்கு (1,1) -> எதிர்பார்க்கப்படுகிறது t2=90 டிகிரி பிரிண்ட்(inverse_kinematik_2r(1.0, 1.0, 1.0, 1.0)) # ~ (0.0, 90.0)
இங்குள்ள முக்கியமான கோடுகள் AI அடிக்கடி தவிர்க்கும் இடங்களாகும்: சென்றடையும் தன்மை சோதனை (பணியிடத்தில் உள்ள புள்ளி) மற்றும் `np.clip` (ரவுண்டிங் பிழை காரணமாக ஆர்க்கோஸ் உள்ளீடு ±1க்கு மேல் செல்வதைத் தடுக்கிறது). இந்த இரண்டு பாதுகாப்புகள் இல்லாமல், குறியீடு NaN ஐ உருவாக்கும் அல்லது தவறான புள்ளியில் செயலிழக்கும்.
உதவிக்குறிப்பு: IK தெளிவுத்திறனைக் கேட்கும் போது, "அணுகல்தன்மைக் கட்டுப்பாட்டைச் சேர்க்கவும் மற்றும் கிளிப்பில் ஆர்க்கோஸ் உள்ளீட்டை வரம்பிடவும்" என்று AI-யிடம் தெளிவாகச் சொல்லவும். இந்த இரண்டு வரிகளும் புலத்தில் அதிக தலைவலியை ஏற்படுத்தும் அமைதியான பிழைகளைத் தடுக்கின்றன.
கூட்டு வரம்புகள், ஒருமைப்பாடு மற்றும் பல தீர்வுகள்
உண்மையான ரோபோவின் ஒவ்வொரு கூட்டுக்கும் கோண வரம்பு (எ.கா. -170° முதல் +170°), வேக வரம்பு மற்றும் முடுக்கம் வரம்பு உள்ளது. IK கணித ரீதியாக சரியான கோணத்தைக் கொடுத்தாலும், அந்தக் கோணம் மூட்டின் இயற்பியல் வரம்பிற்கு வெளியே இருந்தால் அதைப் பயன்படுத்த முடியாது. கூடுதலாக, ரோபோ சில உள்ளமைவுகளில் ஒருமையில் விழுகிறது: இரண்டு அச்சுகள் சீரமைக்கப்பட்டுள்ளன, ஒரு டிகிரி சுதந்திரம் இழக்கப்படுகிறது, மேலும் கூட்டு வேகங்கள் ஒரு சிறிய முனை இயக்கத்திற்கு முடிவிலிக்கு செல்ல முயற்சி செய்கின்றன.
அதனால்தான் HR தீர்வு மட்டும் போதாது; ஒவ்வொரு தீர்வும் ஏற்றுக்கொள்ளக்கூடிய வடிப்பானைக் கடக்க வேண்டும்:
def solution_gecerli_mi(acilar_deg, limits_deg): """வலி: [t1,t2,...], வரம்புகள்: [(min,max),...]""" வலிக்கு, (அமின், amax) ஜிப்பில்(acilar_deg, limits_deg): இல்லாவிட்டால் (அமைன் <= வலி <= amax) வரம்பிற்கு மேல்: {pain:.1f} deg ({amine},{amax}) தவிர" திரும்ப உண்மை, "சரி" வரம்புகள் = [(-170, 170), (-120, 120)]print(cozum_valid_mi([0.0, 90.0], வரம்புகள்)) # (True, 'Okzum')print. 150.0], வரம்புகள்)) # (தவறு, 'கூட்டு வரம்பு மீறப்பட்டது...')
AI ஆனது IK இன் "கணித" தீர்வை கொடுக்க முடியும்; ஆனால் கூட்டு வரம்புகள் மற்றும் ஒருமைத் தவிர்த்தல் ஆகியவை உங்கள் கணினியில் குறிப்பிட்டவையாகும், மேலும் அவை ப்ராம்ட்க்கான சூழலாக கொடுக்கப்பட வேண்டும்.
சுற்றுப்பாதை திட்டமிடல்
புள்ளி A இலிருந்து B புள்ளிக்கு ரோபோவைப் பெறுவது இரண்டு கோணங்களுக்கு இடையில் ஒரு நேர்க்கோட்டை வரைவது அல்ல. திடீர் வேக மாற்றம் இயந்திர அதிர்ச்சி மற்றும் அதிர்வுகளை உருவாக்குகிறது. அதற்கு பதிலாக, மென்மையான சுயவிவரங்கள் பயன்படுத்தப்படுகின்றன: ட்ரெப்சாய்டல் திசைவேக சுயவிவரம் (நிலையான முடுக்கம்-நிலையான வேகம்-நிலையான வீழ்ச்சி) அல்லது S-வளைவு (மென்மையானது, முடுக்கம் குறைவாக இருக்கும்). AI ஒரு பாதையை உருவாக்கும் போது, நீங்கள் இலக்கு, கால அளவு மற்றும் கட்டுப்பாடுகளை கொடுக்க வேண்டும்.
npdef trapez_yorunge(q0, q1, v_max, a_max, dt=0.01) என நம்பியை இறக்குமதி செய்: """ஒரு ஒற்றை மூட்டுக்கான ட்ரெப்சாய்டல் வேகம் சுயவிவரம். நிலை வரிசை திரும்பியது."" தூரம் = abs(q1 - q0) திசை = np.qpes_ (q1t_sign/) a_max தூரம்_வேகம் = 0.5 * a_max * t_speed**2 என்றால் 2 * தூரம்_வேகம் > தூரம்: # முக்கோண சுயவிவரம் (v_max அடைய முடியாதது) t_speed = np.sqrt (distance / a_max) t_constant = 0.0 v_peak = t_maxpeak = t_maxpeak 2 * தூரம்_வேகம்) / v_max v_peak = v_max T = 2 * t_accelerate + t_constant t = np.arange(0, T, dt) # ... ஒவ்வொரு t க்கான நிலைக் கணக்கீடு (முடுக்கம்/நிலையான/குறைவு நிலைகளின் அடிப்படையில்) திரும்ப t, T, v_peak, v_peak trapezoidal_trajectory(0.0, 90.0, v_max=60.0, a_max=120.0)print(f"மொத்த காலம்: {duration:.3f} s, உச்ச வேகம்: {vz:.1f} deg/s")
இங்கே தர்க்க சரிபார்ப்பு: தூரம் குறைவாக இருந்தால், மோட்டார் ஒருபோதும் v_max ஐ அடையாது மற்றும் சுயவிவரமானது ட்ரெப்சாய்டலில் இருந்து முக்கோணமாக மாறும். AI இந்த நிபந்தனையைத் தவறவிட்டால், குறுகிய இயக்கங்களுக்கு தவறான கால அளவு கணக்கிடப்படும். அறியப்பட்ட மதிப்புடன் குறியீட்டைச் சோதிப்பதன் மூலம் இதை நீங்கள் சரிபார்க்கலாம் (எடுத்துக்காட்டாக, மிகக் குறுகிய தூரம்).
பலவீனமான ப்ராம்ட் / ஸ்ட்ராங் ப்ராம்ட்
பலவீனம்:"ரோபோ கையை A இலிருந்து B க்கு அழைத்துச் செல்லும் பாதையை எழுதுங்கள்."(கட்டுப்பாடு இல்லை: வேக வரம்பு? முடுக்கம்? கூட்டு இடைவெளி? குருட்டு வெளியீடு.)STRONG:"6-அச்சு ரோபோட்டுக்கான கூட்டு இடத்தில் ஒரு புள்ளி-க்கு-புள்ளி பாதையை உருவாக்கவும். ஒவ்வொரு கூட்டுக்கும் வேக வரம்பு 18 டிகிரி கோணம், 90 டிகிரி கோணம், 18 டிகிரி ^ வரம்பு அட்டவணையில் கொடுக்கப்பட்டுள்ளது, தூரம் குறைவாக இருந்தால், ஒரு முக்கோண சுயவிவரத்தை பயன்படுத்தவும், அது கூட்டு வரம்புகளை மீறவில்லை என்பதை சரிபார்க்கும் ஒரு சரிபார்ப்பு செயல்பாட்டையும் எழுதுங்கள்.
சரிபார்ப்பு: சிமுலேஷன் முதல் ரோபோ வரை
AI ஆல் உருவாக்கப்பட்ட பாதை ரோபோவுக்குச் செல்வதற்கு முன் இந்த வரிசையில் சரிபார்க்கப்பட்டது:
- எண்: ஒவ்வொரு அடியின் கூட்டு கோணம், வேகம் மற்றும் முடுக்கம் வரம்புகளுக்குள் உள்ளதா?
- மோதல்: பாதையில், கை தன்னுடன் அல்லது சுற்றுச்சூழலுடன் மோதுகிறதா (முடிந்தால் காட்சிப்படுத்துதல்/உருவாக்குதல்)?
- ஒருமைப்பாடு: சுற்றுப்பாதை ஒரு தனித்தன்மை பகுதி வழியாக செல்கிறதா (ஜேகோபியன் தீர்மானிப்பான் பூஜ்ஜியத்தை நெருங்குகிறதா)?
- மெதுவான வன்பொருள் சோதனை: ரோபோவை குறைந்த வேகத்தில் இயக்கவும் (எ.கா. 10%) மற்றும் அதை பார்வைக்கு கண்காணிக்கவும்.
- படிப்படியான வேகம் அதிகரிப்பு: அனைத்தும் சரிபார்க்கப்பட்டவுடன், பெயரளவு மதிப்புக்கு வேகம் படிப்படியாக அதிகரிக்கிறது.
எச்சரிக்கை: முதல் முறையாக புதிய பாதையுடன் ரோபோவைத் தொடங்கும் போது, வேகத்தை மீறுவது எப்போதும் குறைவாக இருக்க வேண்டும் மற்றும் இ-ஸ்டாப் கிடைக்க வேண்டும். AI வெளியீடு "கணித ரீதியாக சரியானதாக" இருந்தாலும், உடல் அமைப்பில் ஒரு ஆஃப்செட், தலைகீழ் அச்சு அல்லது கேபிள் ஸ்னாக் மெதுவான சோதனை மூலம் மட்டுமே வெளிப்படுத்தப்படும்.
மினி கேஸ்
ஆட்டோமேஷன் பொறியாளர் Ece, பிக்-அண்ட்-பிளேஸ் அப்ளிகேஷனுக்காக கூட்டு இடத்தில் டிராஜெக்டரி குறியீட்டை AIயிடம் கேட்கிறார். AI ஒரு ட்ரெப்சாய்டல் சுயவிவரத்தை உருவாக்குகிறது, ஆனால் Ece ஒரு குறுகிய தூர நகர்வைச் சோதிக்கும் போது, நேரம் எதிர்மறையாக இருப்பதை அவள் காண்கிறாள்: v_max ஐ அடைய முடியாத முக்கோண சுயவிவரத்தை குறியீடு கையாளவில்லை. Ece இதை "தொலைவு குறைவாக இருந்தால், முக்கோண சுயவிவரத்தில் விழும்" என்று ப்ராம்ட் சொல்லி சரி செய்கிறார். அது அதன் சொந்த வரம்பு அட்டவணைக்கு எதிராக அதன் சரிபார்ப்பு செயல்பாட்டின் மூலம் AI வழங்கிய கூட்டு கோணங்களை இயக்குகிறது மற்றும் கூட்டு 5 +125 ° ஒரு கட்டத்தில் விரும்பியதைக் கண்டறிந்துள்ளது, அதேசமயம் வரம்பு +120 ° ஆக இருந்தது. அவர் பாதையை மீண்டும் திட்டமிட்டு கண்காணிக்கிறார், இந்த முறை ரோபோவை 10% வேகத்தில் இயக்குகிறார். முதல் சுற்றில், கிரிப்பர் டேபிளுக்கு மிக அருகில் வருவதைக் கண்டு, Z ஆஃப்செட்டை சரி செய்தார். AI சில நிமிடங்களில் வேலை செய்யும் அவுட்லைனைத் தந்தது; ஆனால் மூன்று தனித்தனி சரிபார்ப்புகள் (முக்கோண விவரக்குறிப்பு, கூட்டு வரம்பு, மெதுவான சோதனை) மூன்று தனித்தனி உண்மையான சிக்கல்களைப் பிடித்தன.
பொதுவான தவறுகள்
- கூட்டு வரம்புகள் மற்றும் அணுகல் கட்டுப்பாடு இல்லாமல் IK தீர்வைப் பயன்படுத்துதல்.
- arccos/arcsin உள்ளீடுகளை கிளிப்பிங் செய்யவில்லை, ஆனால் ரவுண்டிங் பிழை ஏற்பட்டால் NaN ஐ உருவாக்குகிறது.
- வேகம்/முடுக்கம் வரம்பிடாமல் சுற்றுப்பாதையைக் கோருதல் மற்றும் இயந்திர அதிர்ச்சியை உருவாக்குதல்.
- ஒருமை மண்டலங்களைப் புறக்கணித்து, கூட்டு வேகத்தை விண்ணை முட்டும்.
- குறுகிய தூரத்தில் ட்ரெப்சாய்டல்-முக்கோண சுயவிவர மாற்றத்தைத் தவிர்த்து, தவறான நேரத்தைக் கணக்கிடுதல்.
- முதல் சுற்றுப்பாதை சோதனையை முழு வேகத்தில் மற்றும் மின் நிறுத்த அணுகல் இல்லாமல் நடத்துதல்.
சுருக்கமாக
- முன்னோக்கி இயக்கவியலில் ஒரு தீர்வு உள்ளது; தலைகீழ் இயக்கவியல் பல, இல்லாத அல்லது எல்லையற்ற தீர்வுகளை உருவாக்க முடியும்.
- கூட்டு வரம்புகள், அணுகல்தன்மை மற்றும் ஒருமைப்பாடு ஆகியவற்றின் அடிப்படையில் IK தீர்வுகள் அவசியம் வடிகட்டப்படுகின்றன.
- பாதை திட்டமிடல்; இது ட்ரெப்சாய்டல் அல்லது S-வளைவு போன்ற மென்மையான, வரம்பு-இணக்கமான சுயவிவரங்களைப் பயன்படுத்துகிறது.
- குறுகிய தூரத்தில் சுயவிவரம் ட்ரெப்சாய்டலில் இருந்து முக்கோணமாக மாறுகிறது; இது குறியீட்டில் கையாளப்பட வேண்டும்.
- AI கணிதத்தை வேகப்படுத்துகிறது; வரம்புகள் மற்றும் இயற்பியல் நிறுவல் சூழல் வரியில் நுழைய வேண்டும்.
- புதிய பாதை எப்போதும் முதல் முறையாக குறைந்த வேக விகிதம் மற்றும் அணுகக்கூடிய மின்-நிறுத்தத்துடன் இயக்கப்படுகிறது.
விண்ணப்ப பணி
இரண்டு அல்லது மூன்று-கூட்டு கை மாதிரியைத் தேர்ந்தெடுக்கவும் (உண்மையான அல்லது கற்பனை இணைப்பு நீளம் மற்றும் கூட்டு வரம்புகளுடன்). AI ஒரு தலைகீழ் இயக்கவியல் செயல்பாடு மற்றும் இந்த சூழலுடன் ஒரு பாதை திட்டமிடல் ஆகியவற்றை உருவாக்க வேண்டும். பிறகு: (1) அறியப்பட்ட இலக்குடன் IK வெளியீட்டை கைமுறையாகச் சரிபார்க்கவும் (நீங்கள் கோணங்களை மீண்டும் வைத்து அதே புள்ளிக்கு திரும்புகிறீர்களா), (2) குறைந்தபட்சம் ஒரு அணுக முடியாத புள்ளி மற்றும் ஒரு கூட்டு வரம்பை இலக்கை விட அதிகமாகக் கொடுப்பதன் மூலம் குறியீடு அவற்றைப் பிடிக்கிறதா என்று சோதிக்கவும், (3) சிறிது தூரத்தில் சுற்றுப்பாதை நேரம் நியாயமானதா என்பதைச் சரிபார்க்கவும். குறியீட்டின் முதல் பதிப்பில் நீங்கள் எத்தனை சரிபார்ப்புச் சிக்கல்களைக் கண்டறிந்தீர்கள், எந்த லேயர் ஒவ்வொன்றையும் பற்றி எழுதுங்கள்.