CircuitPython , Raspberry Pi Pico ஆகியவை இணைந்து நாம் அன்றாடம் பயன்படுத்திகொள்கின்ற சாதனங்களை அதிசய திறன்மிகுசாதனங்களாக மாற்றுகின்றவாறு. CircuitPython ஐப் பயன்படுத்திகொள்வதற்கான எளிய நிரலை எழுதிடுவதற்கும், அந்நிரலை Raspberry Pi Pico இல் பதிவேற்றம் செய்திடுவதற்கு இந்த சிறிய பயிற்சி கையேடு உதவும்.
பொருட்களுக்கான இணை.ய(IoT) என்பது தனிப்பட்ட அடையாளங்காட்டிகளைப் பயன்படுத்தி பொருட்களானவை ஒன்றுக்கொன்றுடனும் இணையத்துடனும் தொடர்பு கொள்கின்ற திறன் கொண்ட சாதனங்களின் வலையமைப்பைக் குறிக்கின்றது. இந்தச் சாதனங்களில் செயலாக்கத் திறன்கள், உயர்திறன்ஆற்றல் கணினி , உணர்திறன் அலகுகள், சக்திவாய்ந்த உட்பொதிக்கப்பட்ட அமைப்புகள் உள்ளன, இது ‘திறன்மிகு சாதனங்கள்’, திறன்மிகு நகரங்கள்’,திறன்மிகு பள்ளிகள்’ என பல்வேறு பயன்பாடுகளை அனுமதிக்கிறது. IoTஆனது மின்விளக்குகள், காண்காணிப்பாளர்கள், மகிழ்வுந்துகள் , வாயிற்கதவுகள் போன்ற நம்முடைய வாழ்வில் அன்றாட பயன்பாட்டிற்காக பயன்படுத்திகொள்கின்ற பொருட்களை இணையத்துடன் இணைக்கிறது, இது பொதுமக்கள், செயல்முறைகள் ,செயல்பாடுகள் ஆகியவற்றுகளுக்களிடையே தரவையும் தகவல் பரிமாற்றத்தையும் செயல்படுத்துகிறது. இந்தத் தரவும், தகவல்தொடர்பும், மருத்துவம் , கல்வி , வேளாண்மை போன்ற பல்வேறு துறைகளின் பயன்பாடுகளாகக் கண்டறிகின்றது. எடுத்துக்காட்டாக, வேளாண்மைச் சூழல்களைக் கண்காணிக்கவும், அன்றாட வீட்டுச் செயல்பாடுகளைக் கண்காணிப்பதன் மூலம் திருட்டைத் தடுக்கவும், தொழிற்சாலைகளில் இயந்திரங்களைக் கட்டுப்படுத்தவும், மின் தடைகளைப் புகாரளிக்கவும் IoT உதவுகின்றது.
Alexa , smartwatches ஆகியன மிகவும் பிரபலமான சில IoT சாதனங்கள் ஆகும், இவை தானியங்கியானசெயல்களுகாக வீடுகளிலும் மருத்துவத்திற்கும் பயன்படுத்தி கொள்ளப்படுகின்றன. இந்தச் சாதனங்கள் சிக்கலான பணிகளைச் செய்ய மீச்சிறுகட்டுப்பாட்டு அலகுகள் (MCUs) , நுண்செயலி அலகுகள் (MPUs) எனப்படும் வன்பொருள் கூறுகளை நம்பியுள்ளன. எடுத்துக்காட்டாக, அலெக்சா ஆனது NXP i.MX RT106A MCUஎனும் நுன்செயலிஅலகினைப் பயன்படுத்துகிறது, இது சாதனத்தில் நேரடியாக Alexa இன்குரலொலி வாயிலான சேவையை இயக்க உதவுகிறது. குரலொலி உதவியாளர்கள் , இயந்திர கற்றல் பயன்பாடுகளை ஆதரிக்கின்ற MediaTekஆனது MT8516 MPU எனும்அலகினையும் இது ஒருங்கிணைக்கிறது.
Raspberry Pico எனும்உயர் செயல்திறனுடைய MCUஅலகு
இந்த கட்டுரையில், Raspberry Pi இன் RP2040 எனும் மீச்சிறுகட்டுப்பாட்டாளர் சிப்பின் அடிப்படையில் Raspberry Pi Pico எனப்படும் MCUஎனும் அலகினைஇப்போது ஆராய்ந்திடுவோம், மேலும் CircuitPython ஐப் பயன்படுத்தி LED ஐ ஒளிரச் செய்வதற்கான மாதிரிக் குறிமுறைவரிகளை எவ்வாறு எழுதுவது என்பதைக் கற்றுக்கொள்வோம். Raspberry Pico என்பது RP2040 எனும்சிப்பைப் பயன்படுத்தி கொள்கின்ற மிகவும்குறைந்த விலையில், அதிக செயல்திறன் கொண்ட MCU அட்டையாகும். இந்த சிப்பில் ARM Cortex-M0+ எனும் இரட்டை உள்ளகசெயலி, 264KB SRAM ,எனும் 2MB அளவு அதிவிரைவு நினைவகம் உள்ளது. கூடுதலாக, இது 26 GPIO எனும் சொந்தஅடையாளஎண்கள், மூன்று ஒத்திசைவு உள்ளீடுகள் , I2C, SPI , UART ஆகிய நெறிமுறைகளுக்கான ஆதரவை வழங்குகிறது. ராஸ்பெர்ரி பை பைகோ ஆனது பைதான் அல்லது சி/சி++ குறிமுறைவரிகளைகளை இயக்க முடியும், இது நிரலையும் தனிப்பயனாக்குவதையும் மிகவும் குறிப்பிடத்தக்க வகையில் எளிதாக்குகிறது. அதன்மூலம் மேம்பாட்டு சூழலை அமைப்பது, எளிய நிலச்சாதனத்திற்கான நிரலை எழுதுவது, அதை நம்முடைய ராஸ்பெர்ரி பைக்கோ அட்டையில் பதிவேற்றுவது ஆகியவற்றின்மூலம் வழிகாட்டப்படுகின்றது.
IoTக்கான பைத்தானை ஆராய்ந்திடுதல்
பைதான் என்பது பொருட்களுக்கான இணையம்(IoT) உட்பட பல்வேறு செயற்களங்களை உள்ளடக்கிய பயன்பாடுகளுடன் பரவலாகப் பயன்படுத்தி கொள்ளப் படுகின்ற பல்துறை நிரலாக்க மொழியாகும். ஏதேனும் சாதனங்களில் ஒன்றினை Raspberry Pi Pico இன்வாயிலாகப் IoT செயல்திட்டங்களுக்காக பயன்படுத்தி கொள்ளலாம், ஏனெனில் இந்த குறைந்த விலையிலான மீச்சிறுகட்டுப்பாட்டு அட்டையில் கூட பைதான் குறிமுறைவரிகளை எழுதிஇயக்க முடியும் என்பதே இதன் சிறப்பியல்பாகும். பைத்தானுடன் இந்த பைக்கோவை நிரலாக்கம்செய்திடமீச்சிறு கட்டுப்பாட்டாளர்கள் , உட்பொதிக்கப்பட்ட அமைவுகள் ஆகியவற்றிற்கு உகந்த ஒரு பைதானின் வேறொரு வடிவமான சர்க்யூட் பைத்தானைப் பயன்படுத்திகொள்க.
CircuitPythonஆனது பல்வேறு உள்ளமைக்கப்பட்ட நூலகங்களையும் தகவமைவு கூறுகளையும் கொண்டுள்ளது, அவை வன்பொருள் கூறுகளுடன் குறிமுறை வரிகளையும் இடைமுகத்தையும் எளிதாகஇணைத்து செயல்படுத்துகின்றன. நம்முடைய Pico இணைந்த சாதனத்தை இயக்கிடுவதற்காக, 5V , 2A அளவிலான மின்னோட்டம் வழங்கக்கூடிய மின்சாரம் நமக்குத் தேவைப்படும். அதற்கான வாய்ப்புகளில் battery pack அல்லது micro-USB இணைப்பானுடன் கூடிய மின்னேற்பி ஆகியவை அடங்கும். இந்த கட்டுரையில் Adafruit adapterஐ பயன்படுத்தி கொள்ளப்படுகின்றது, இது பைக்கோ அட்டையுன் இணக்கமான சுவற்றின்விரலி மின்னேற்றியாகும்(USB wall charger) . இதற்காக இந்த விவரக்குறிப்புகளைப் பூர்த்தி செய்கின்ற , மீச்சிறு விரலி வாயிலைக் கொண்ட வேறு எந்தவொரு மின்ஏற்பியையும் பயன்படுத்தி கொள்ளலாம்.
படம் 1: எல்இடி இணைக்கப்பட்ட ராஸ்பெர்ரி பை பைகோ
மின்சுற்று இணைப்புகள்
இந்த கட்டுரைக்காக உருவாக்கிய எண்ணிம மின்சுற்றின் மாதிரி இங்கு குறிப்பிடப்பட்டுள்ளது. இது GPIO pin 22 ஐ குறைந்தபட்ச 500 ohms மின்தடையுடன் இணைக்கிறது. பச்சைவண்ணத்திற்கான LED மின்சுற்றுக்கு, 220-ஓம் மின்தடையத்தைப் பயன்படுத்தலாம். ஏனென்றால், சிவப்பு ஒளியின் அதிர்வெண் காணக்கூடிய ஒளி நிறமாலையில் மிக அதிகமாக உள்ளது, மேலும் பின்வரும் சமன்பாட்டின் படி, ஆற்றலானது அதிர்வெண்ணுக்கு நேர் விகிதமாகும்:
Energy = h * frequency
அதாவது பச்சைவண்ண LED மின்விளக்குகளை விட சிவப்பு நிற LED மின்விளக்குகள் மிக விரைவாக வெப்பமடைகின்றன. இதைத் தடுக்க, உயர் எதிர்ப்பு மின்தடையங்கள் தேவையாகும். மின்தடையின் மறுமுனை LED மின்விளக்கின் நேர்மறை முனைமத்துடன் இணைகிறது, LED இன் சிறிய அலகால் குறிக்கப்படுகிறது. எதிர்மறை முடிவு ராஸ்பெர்ரி பை பைக்கோவின் GND தரையில் சொந்தஅடையாளஎண்ணுடன் இணைக்கப்பட்டுள்ளது.
மென்பொருள் தகவமைவு
CircuitPython உடன் Raspberry Pi Pico நிரலாக்கம் செய்வதற்காக,பின்வருமாறானப் படிமுறைகளைப் பின்பற்றிடுக:
ராஸ்பெர்ரி பை பைகோவிற்கான சர்க்யூட் பைத்தானின் சமீபத்திய பதிப்பை அதனுடைய இணையதளத்தில் இருந்து பதிவிறக்கம்செய்திடுக.
விரலிUSB மின்கம்பியைச் செருகும் போது BOOTSEL எனும் பொத்தானை அழுத்திப் பிடித்து கணினி.யுடன் Pico ஐ இணைத்திடுக. இது Pico ஐ இயக்கத்தை நினைவகத்தில்ஏற்றிடுகின்ற செயற்பாட்டுமுறையில் வைக்கிறது, மேலும் RPI-RP2 என்ற இயக்கி திரையில் தோன்றுகின்றது.
படிமுறையின்முதலில்கூறியவாறு பதிவிறக்கம் செய்யப்பட்ட adafruit_circuitpython_etc.uf2 எனும் கோப்பை RPI-RP2 இயக்ககத்தில் இழுத்து கொண்டுந்துவிடுக. இது Pico இல் CircuitPython ஐ நிறுவுகைசெய்கிறது, மேலும் உடன் இயக்கி மறைந்துவிடுகின்றது.
தொடர்ந்துCIRCUITPY எனப்படும் புதிய இயக்கி திரையில்தோன்றுகிறது, அதில் CircuitPython இன் அட்டையில் இயங்குவதற்குத் தேவையான கோப்புகளும் கோப்புறைகளும் உள்ளன.
நாம் பயன்படுத்தவேண்டிய முக்கிய கோப்பு code.py ஆகும், இது அட்டையின் செயல் இயங்கும் போது அல்லது மீட்டமைக்கப்படும் போது இயக்கப்படுகின்ற இயல்புநிலையிலான CircuitPython குறிமுறைவரிகளிலான கோப்பாகும். lib எனும் கோப்புறையில் நம்முடைய குறிமுறைவரிகளுக்கான நூலகங்கள் அல்லது தகவமமைகள் உள்ளன.
குறிமுறைவரிகளை எழுதி இயக்குதல்
நம்முடைய குறிமுறாைவரிகளை எழுதி இயக்குவதற்காக, CircuitPython ஐ ஆதரிக்கின்ற எந்தவொரு உரைபதிப்பானையோ அல்லது ஒருங்கிணைந்த மேம்பாடடுசூழலையோ (IDE) பயன்படுத்திகொள்ளலாம். தற்போதையஇந்தசூழலில், உள்ளமைக்கப்பட்ட சர்க்யூட் பைதான் மொழிபெயர்ப்பாளருடன் கூடிய எளியதும் துவக்கநிலைக்கு ஏற்றதுமானThonny IDEஎன்பதை பயன்படுத்திகொள்வோம். Thonny IDE ஐப் பயன்படுத்திகொளவதற்காக, கருவிகள் பட்டியிலிருந்து CircuitPython interpreterஎன்பதைத் தேர்ந்தெடுத்து நாம் பயன்படுத்திகொள்கின்ற சாதனமாக Raspberry Pi Pico ஐத் தேர்ந்தெடுக்துகொள்க.
Thonny IDE எனும், editor window இல் நமது குறிமுறைவரிகளை எழுதி அதை CIRCUITPY எனு் இயக்கியில் code.py ஆக சேமித்திடுக. எடுத்துக்காட்டாக, இதில் காண்டுள்ளவாறு, 0.5 வினாடி இடைவெளியுடன் பைக்கோ அட்டையின் சொந்தஅடையாளங்காட்டிஎண் 22 உடன் இணைக்கப்பட்ட எல்இடி மின்விளக்கினை ஒளிரச் செய்வதற்கான குறிமுறைவரிகள் பின்வருமாறு:
Blink.py
1 import time
2 import board
3 import digitalio
4
5 led = digitalio.DigitalInOut(board.GP22)
6 led.direction = digitalio.Direction.OUTPUT
7
8 while True:
9 led.value = not led.value
10 time.sleep(0.5)
11 led.value = not led.value
12 time.sleep(0.5)
13
அவ்வளவுதான் வாழ்த்துக்கள்நம்முடைய பணி வெற்றிகரமாக முடிவடைந்தது.இந்த கட்டுரையில், Raspberry Pi Pico ஐ CircuitPython மூலம் எவ்வாறு நிரலாக்கம் செய்வது என்றும். CircuitPython ஐ பதிவிறக்கம் செய்து நிறுவுகை செய்தல், Thonny IDE ஐப் பயன்படுத்தி, Pico அட்டையுடன் இணைக்கப்பட்ட LED மின்விளக்கினை எவ்வாறு ஒளிரச் செய்வது என்பதற்கான குறிமறைவரிகளை எழுதி இயக்குவதை கண்டுவந்தோம்
CircuitPython ஆனது ஒரு சக்திவாய்ந்த , பயனரின் நட்பு டன் கூடிய ஒரு நிரலாக்க மொழியாகும், இது Pico அட்டை , போன்றபிற வன்பொருள் கூறுகளைப் பயன்படுத்தி பரந்த அளவிலான IoT செயல்திட்டங்களை உருவாக்கிடுவதற்காக நமக்கு உதவகிறது.