ஆதலினால் ரோபாட் செய்வீர் 2

Wednesday, March 18, 2015

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

அறுபத்து நான்கு குழுக்கள் பங்கேற்றதில் வெளி மாநிலத்தவரும், துருக்கி, பிரேசில் முதலான வேறு நாட்டவர்களும் அடக்கம். எங்களையும் சேர்த்து ஐந்து குழுக்கள் முதன்முறையாகப் போட்டியிட்டன. குழுக்கள் பலவும் வேடிக்கையான பெயர்களை வைத்துக்கொள்கின்றன. அவர்களுக்கு கொடுக்கப்பட்ட எண்ணும் முக்கியமானதுதான். அவர்களின் தரவரிசை, பெற்ற புள்ளிகள்  போன்றவை குழுவின் எண்களை வைத்துத்தான் பட்டியலிடப்படுகின்றன. எங்கள் எண் 5628, பெயர் சைபோர்க்-சக்கரா (ம்).

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



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

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

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

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

மேல் விவரங்களுக்கு
மேலும் படங்கள் இந்த மடல் குழுவில்

யாகல்லாராயினும் கற்க லீனியர் அல்ஜிப்ரா

Sunday, November 09, 2014



அறிவியல், நுட்பியல், பொறியியல், கணிதம் ஆகிய பாடங்களை ஆங்கிலத்தில் சுருக்கமாக ஸ்டெம்  (Science, Technology, Engineering, Math - STEM) என்கிறார்கள். இந்தப்பாடங்களைப் படிக்க கணினியின் தேவை நாளுக்குநாள் அதிகரித்துக்கொண்டே வருகிறது. அதற்கு ஒரு காரணம் கல்லூரிப்புத்தகங்களின் புதிய  பதிப்புகளில் பாடங்களை விளக்க லீனியர் அல்ஜிப்ரா (நேரியல் இயற்கணிதம்)பயன்படுத்துவதும், அந்தக்கணக்குகளை "மாட்லாப்" (MatLab) என்னும் கணினி மென்பொருளின் நிரல்மொழியில் எழுதுவதும் ஆகும்.

அதற்காக லீனியர் அல்ஜிப்ரா கடினம் என்று அருத்தம் இல்லை. கணினியின் அடிப்படை எளிய கணக்குகள் அல்லவா? லீனியர் என்பதற்கு நேர்கோடு என்று பொருளாகும். அதாவது, x2, x3
போன்று மதிப்புகள் வளையப்பெரும் வர்கமுறை இல்லாத 1x, 2x போன்று மதிப்புகள் நேர்கோடாய்ச் செல்லும் எளிய மடங்கு முறைகளைக் குறிக்கும். லீனியர் அல்ஜிப்ரா என்பது பல பரிமாணங்களில் மடங்கு எண்களின் கூட்டு சமன்பாடுகளைப்பற்றியதாகும்.
உ.ம்: 2x + y + z = 5 என்பது ஒரு லீனியர் அல்ஜிப்ரா முப்பரிமாண சமன்பாடாகும்.

இத்தகைய சமன்பாடுகள் அனைத்து அறிவியல் துறைகளிலும் காணப்பெறுகின்றன. இவைகளைக் கணக்கிட, திசையன் (வெக்டர் vector), அணி (மாட்ரிக்ஸ் matrix) முதலான  கணிதமுறைகள் பயன்படுகின்றன. அடிப்படையில் இவை எளிய கூட்டல் பெருக்கல் கணக்குகளாவதால், கணினி நிரல்கள் மூலம் விடைகளைப்பெறுவதும் எளிதாகிறது. எனவே, வேறு குறியீட்டு முறை கணிதங்களும் கூட, லீனியர் அல்ஜிப்ராவிற்கு மாற்றப்பட்டு கணினிகளின் துணையால் சடுதியில் விடை காண்கிறார்கள்.

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

பள்ளிக்கூடங்களில் இந்தகணிதம் சொல்லித்தரப்படாததற்கு காரணம் அதற்குத்தேவைப்படும் "மாட்லாப்" போன்ற மென்பொருள்கள் கொள்ளைவிலை என்பதால் இருக்கலாம். ஆனால் அதற்கு இணையாக இப்போது கட்டற்ற மென்பொருள்கள் இருக்கின்றன. "ஆக்டேவ்" (Octave) என்னும் மென்பொருள் மாட்லாபின் நிரல்களை பெரும்பாலும் மாற்றம் எதுவும் இன்றி இயக்குகின்றன. மாட்லாபின் மற்றொரு அங்கமான சிமுலிங்க் (Simulink) கட்டுப்பாட்டு அமைப்புகளை (control systems - இதைப்பற்றி தனியே எழுதவேண்டும்) வடிவமைக்க உதவுகிறது. ஆக்டேவில் இந்த வசதி இல்லை. இந்த வசதியுடன் கூடிய சைலாப் (Scilab) என்னும் மென்பொருள் அதற்கு ஈடாகிறது. ஆனால் இதன் நிரல்மொழி மாட்லாபில் இருந்து சற்று மாறுபட்டது.

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

கல்லூரி செல்ல ஆயத்தப்படுத்திக்கொள்ள விரும்பும் மாணவர்களும், பெற்றோர்களும்,  "லீனியர் அல்ஜிப்ரா", வெக்டர், மாட்ரிக்ஸ் ஆகியவைப் பற்றி அறிந்துகொள்வது மிகவும் நல்லது.

சில சுட்டிகள்:
MITன் காணொளிகள்
IITன் Scilab இணையதளம்
ஆக்டேவ்
சைலாப்

தன் உயிரை மாய்த்துக்கொண்ட இளம் சீன உழைப்பாளி சுயு லிஜி யின் கவிதைகள்

Thursday, November 06, 2014


சுயு லிஜி (Xu Lizhi 许立志) தன் 24ம் வயதில், ஆப்பிள் ஃபோன் போன்ற மின் உபகரணங்களை உற்பத்திசெய்யும் ஃபாக்ஸ்கான் நிறுவனத்தின் கொத்தடிமை வேலைப்பழு தாங்காமல் செப்டம்பர் 30, 2014 அன்று தன் இன்னுயிரை மாய்த்துக் கொண்டார். அவர் எழுதியுள்ளக் கவிதைகள் நெஞ்சை உலுக்குகின்றன.

அதில் ஒன்று இங்கே - ஆங்கில மொழிபெயர்ப்பிலிருந்து தமிழில்:

《一颗螺丝掉在地上》 "A Screw Fell to the Ground"
திருகாணி ஒன்று கீழே விழுந்தது

一颗螺丝掉在地上 A screw fell to the ground
திருகாணி ஒன்று கீழே விழுந்தது
在这个加班的夜晚 In this dark night of overtime
மேல்வேலையின் இந்த இருண்ட இரவில்
垂直降落,轻轻一响 Plunging vertically, lightly clinking
நெட்டுக்குத்தாக வீழ்ந்ததன், மெல்லிய சிணுங்கல்
不会引起任何人的注意 It won’t attract anyone’s attention
யாரது கவனமும் பெறாது
就像在此之前 Just like last time
சென்ற முறைப் போலவே
某个相同的夜晚 On a night like this
இதே போன்ற இரவில்
有个人掉在地上 When someone plunged to the ground
ஒர் உடல் தரையில் சரிந்த போது

-- 9 ஜனவரி 2014
மேல் விவரங்களுக்கு

கணினிக்கு உகந்த மொழியில் இரண்டே சொற்கள்.

Saturday, August 16, 2014


கணினியின் அனைத்து செயல்பாடுகளுக்கும்  அடிப்படை இரண்டே எண்கள் 0-ம் 1-ம் ஆகும். கணினியில் பயனுரும், எண்ணென்ப ஏனை எழுத்தென்ப, மற்றும் பார்க்கும் படமென்ப, கேட்கும் ஒலியென்பவை அனைத்தும் இந்த இரண்டு எண்களை மட்டுமே கொண்டு செயல்படுகின்றன.

கணினியின் ஆதாரமான மைக்ரோ புராசசரை 1984ல் ஆல்பர்ட் பால் மால்வினோ எழுதிய ‘டிஜிட்டல் கம்ப்யூட்டர் எலெக்ட்ரானிக்ஸ்’புத்தகத்தின் மூலமாகக்கற்றுக்கொண்டேன். அதில் ஒரு சுவிச்சை தட்டி இருந்தால் 1 - தட்டாமல் இருந்தால் 0 என்று சிறுபிள்ளைக்கு பாடம் நடத்துவதுபோல் துவங்கி,இடையில் உதிரிப்பாகங்களைக் கொண்டு செய்த மிக எளியக் கணினி ஒன்றின் வடிவமைப்பைக் கொடுத்து இருந்தார். அதற்கு ’இயன்ற அளவு எளிய’ என்ற பொருளில்  SAP (Simple As Possible) என்று பெயர்.

அதை ஒருவர் செய்து இயக்குவதை கீழே காணலாம். அதைப் பார்க்கும் முன் கணினி இயங்கும் முறையைப்பற்றி சிறு விளக்கம்:
கணினி செய்யவேண்டிய கட்டளைகளை முதலில் ஓரிடத்தில் பதிவு செய்யவேண்டும். அதன் பின்னர்தான் பதிந்த கட்டளைகளை செயல்படுத்த அதைப் பணிக்க முடியும்.

இந்தக் கணினியில் மொத்தம் 16 இடங்கள் உள்ளன. அவற்றை A0, A1, A2, A3 ஆகிய நான்கு சுவிச்சுகளை வைத்து நான்கு இலக்க இரும (binary) எண்களால் குறிக்கிறோம். எல்லா சுவிச்சுகளும் தட்டி இருந்தால் (மேல் நோக்கி) இரும எண்  1111 = தசம எண் 15ஆம் இடத்தைக் குறிக்கும். எல்லா சுவிச்சுகளும் கீழே இருந்தால் இடம் 0.

ஒவ்வொரு இடத்திலும், ஒரு எட்டு இலக்க இரும எண்ணைப் பதிவு செய்ய முடியும். வேறொரு முறையில் சொல்வதானால் இந்த கணினியின் கொள்ளளவு 16 வரிசை 8 புள்ளிகள், அவ்வளவே. அந்த எட்டு இலக்க இரும எண்கள் 0 முதல் 255 வரை ஆகும். அவற்றை முறையே 0000 0000ம், 1111 1111ம் குறிக்கும். இந்த எண்களை பதிய எட்டு சுவிச்சுகள் D0 - D7 உள்ளன.

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

எட்டு இலக்கங்களுள் மேல் நான்கு இலக்கங்கள் (D4-D7)கட்டளையைக் குறிக்கவும், கீழ் நான்கு இலக்கங்கள் (D0-D3) எடுத்துக்கொள்ளவேண்டிய எண்கள் இருக்கும் இடத்தைக் குறிக்கவும் பயன்படுத்தப்படுகின்றன.

குறியீடு - கட்டளை
0000 - எடு LDA
0001 - கூட்டு ADD
0010 - கழி SUB
1110 - வெளியிடு OUT
0111 - நில் HLT

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

உ.ம்:
0000 1010 - என்பது இடம் 1010 (10 தசம)ல்  உள்ள எண்ணை எடுத்துக்கொள் என்றக் கட்டளையாகும்.
0001 1011 - என்பது இடம் 1011 (11 தசம)ல் உள்ள எண்ணை முன்பு எடுத்துக்கொண்டுள்ள எண்ணுடன் கூட்டு என்றக் கட்டளையாகும்.

இந்தப் படத்தில் கீழ்க்காணும் நிரலை கணினியில் நிறுவி ஓட்டுவதைப் பார்க்கலாம்.

இடம் - மனனம் - குறியீடு - எண் இருப்பிடம் ; விளக்கம்
 0 0000 - LDA - 0000 - 1010 ; 65ஐ எடு
 1 0001 - ADD - 0001 - 1011 ; 47ஐ கூட்டு
 2 0010 - SUB - 0010 - 1100 ; 24ஐ கழி
 3 0011 - ADD - 0001 - 1101 ; 3ஐ கூட்டு
 4 0100 - ADD - 0001 - 1110 ; 16ஐ கூட்டு
 5 0101 - ADD - 0001 - 1111 ; 7ஐ கூட்டு
 6 0110 - OUT - 1110 - இல்லை; விடையை காண்பி
 7 0111 - HLT - 1111         ; நில்

எண் இருப்பிடம் - எண் (இரும) - தசம
10 1010 - 0100 0001 - 65
11 1011 - 0010 1111 - 47
12 1100 - 0001 1000 - 24
13 1101 - 0000 0011 - 3
14 1110 - 0001 0000 - 16
15 1111 - 0000 0111 - 7

விடை: 65+47-24+3+16+7 = 114(தசம) = 01110010(இரும)




இந்த விளக்கங்கள் முழுமையாகப் புரியாவிட்டாலும், கணினியின் கட்டளைகள் எளியவை என்றும் அவைகளைக்குறிக்க எண்களே பயன்படுகின்றன என்பதும் மட்டுமாவது புரியும் என்று நம்புகிறேன்.

முதலில் நிரலிகள் இப்படி மனனக்குறியீடுகளில் எழுதப்பட்டு, அவற்றை சுவிச்சுகள் மூலமோ, 0ம் 1ம் குறிக்க அட்டைகளில் துளையிட்டு, அந்த அட்டைகளை  செலுத்தியோ கணினியில் நிறுவப்பட்டன. பின்பு மனனக்குறியீடுகளில் நேரடியாக தட்டச்சப்பட்டு, அதை எண்களாக கணினிமூலமாகவே மாற்றியபின் ஓட வைக்கப்பட்டன. இப்படி மனனக்குறியீடில் எழுதும் மொழி ‘அசெம்ப்ளி’ (assembly) மொழி என்று காரணப் பெயர் பெற்றது.

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

பின்னர் நிரல்கள் பேச்சு மொழி சொற்களால் ஆன நிரல்மொழிகளில் எழுதப்பட்டு அம்மொழிகளில் இருந்து கணினியின் கட்டளைகளாக மாற்றியபின் ஓடுமாறு செய்யப்பட்டது. பொதுவாக இம்மொழிகளில் எழுதப்பட்ட ஒரு நிரலைப் பலவகைக் கணினிகளில் ஓட்ட முடியும். இத்தகைய நிரல் மொழிகளில் முதன்மையான 20 மொழிகள், மொத்ததில் 70 சதவீத நிரல்களை எழுதப் பயன்படுத்தப்படுகின்றன. இவற்றுள் ’சி’ முதலிடமும் (16%), ’ஜாவா’ இரண்டாமிடமும் (15%) வகிக்கின்றன. பயன்பாட்டு விகிதங்கள் வரிசையில் முதல் 50 மொழிகள் இங்கே அட்டவணையாக்கப்பட்டுள்ளன.

இப்படி பேச்சு மொழி சொற்களில் எழுதப்படும் நிரல் மொழிகளும், கட்டமைப்பு மொழிகள் (structural), பொருள்  சார்ந்த மொழிகள்(object oriented), வினை சார்ந்த மொழிகள் (functional) என்று படிப்படியாக முன்னேற்றம் அடைந்துள்ளன. கடந்த இருபது வருடங்களாக சி++, ஜாவா போன்ற பொருள் சார்ந்த மொழிகள் பெரும்பான்மையாக புழங்கப்பட்டன.

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

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

ஆதலினால் ரோபாட் செய்வீர்

Friday, June 13, 2014

நடுநிலைப் பள்ளிக் குழந்தைகளிடையே (வயது 9 முதல் 14 வரை) நடத்தப்படும் ரோபாட் போட்டிகளில் முதன்மையானது
பர்ஸ்ட் லெகோ லீக் (FIRST Lego League) ஆகும்.  இப்போட்டிகளை
 FIRST (For Inspiration and Recognition of Science and Technology - என்பதன் சுருக்கம்) நிறுவனத்தார் தயாரித்து அளிக்கின்றனர். இந்நிறுவனத்தை பல புகழ்பெற்ற கண்டுபிடிப்புகளை தந்த ”டீன் கமென்” என்பவர் 1989ல் ஆரம்பித்தார். இப்போட்டிகள் ஆண்டுதோறும் செப்டம்பர் வாக்கில்
அறிவிக்கப்பட்டு மார்ச் வரை நடக்கின்றன. ஏதேனும் ஒரு கருப்பொருளை மையமாக எடுத்துக்கொண்டு, அதற்கேற்ப  4 அடிக்கு 8 அடி அளவில் வரைபடமும் அதன் மேல் பொருத்தமான லெகோ துணுக்குகளால் செய்யப்பட்ட கொலு பொம்மைகளையும் வெளியிடுகிறார்கள்.

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

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

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




குழுக்களின் திறமையை மூன்றுவித தேர்வுகளுக்கு உட்படுத்தி முடிவு செய்கிறார்கள். இதில் நுட்பியலுக்கு 33.3 சதம் (போட்டியில் எடுத்த புள்ளிகளுக்கு 16.5% + நுட்பியல் நேர்காணலுக்கு 16.5%), கருத்துக்கு
ஏற்ற புறத்திட்டுக்கு 33.3 சதம்  மற்றும் குழுவின் கூடிசெயல்வகைக்கு 33.3 சதம்   என்று பிரித்துக் கொடுக்கிறார்கள். தேர்வில் போட்டி மனப்பான்மையைவிட மாணவர்களின் ஒழுங்கும் கல்வியுமே முக்கியத்துவம்  பெருகின்றன. முதலில் உள்ளூர் போட்டிகள் இரண்டும், அதில் ஏதாவதொன்றில் தேர்வானால், வட்டார அளவிலும், அதிலிருந்து மாநில அளவிலும் அடுத்து
தேசிய அளவிலும் போட்டிகள் நடக்கின்றன.

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

எங்கள் குழுவிற்கு நாங்கள் இட்ட தமிழ் சார்ந்த பெயர் வீராபாட்ஸ்.


இந்தியாவில் சில இடங்களில் இப்போட்டிகள் நடைபெறுவதாகத்தெரிகிறது. பெங்களூருவில் எட்டாம் வகுப்பு மாணவர்களிடம் அவர்களின் தொழில் தேர்ந்தெடுத்தலைப்பற்றி பேச நோபல் பரிசு பெற்ற விஞ்ஞானிகளை அழைத்து வருகிறார்கள். இதை செய்யமாட்டார்களா? இந்த வெற்றியின் காரணமாக, எனது நண்பர்கள் அடுத்து உயர்நிலைப்பள்ளி மாணவர்களுக்கு நடக்கும் போட்டி (FIRST Robotic Championship) குழு அமைக்க முயற்சி செய்துகொண்டுள்ளார்கள். அதற்கு பொறியில் கல்லூரிப்படிப்பு போல கடின உழைப்பும், தொழிற்சாலைகளில் பயன்படும் அளவு உயர்தர விலை கூடிய பாகங்களும் தேவை. பின்னாட்களில் அதைப்பற்றி பகிர்ந்துகொள்கிறேன்.