Arduino IDE ஐப் பயன்படுத்தி ESP32 வலை சேவையகம்

Arduino Ide Aip Payanpatutti Esp32 Valai Cevaiyakam



ESP32 என்பது மைக்ரோகண்ட்ரோலர் போர்டு ஆகும், அதன் GPIO பின்களைப் பயன்படுத்தி பல சாதனங்களுடன் இணைக்க முடியும். இதில் உள்ளமைந்த Wi-Fi மற்றும் ப்ளூடூத் இடைமுகம் கொண்ட டூயல் கோர் செயலி உள்ளது. இந்த இரண்டு அம்சங்களும் IoT திட்டங்களை வடிவமைக்க ESP32ஐ பொருத்தமான பலகையாக மாற்றுகிறது. ESP32 போர்டின் முக்கிய அம்சங்களில் ஒன்று, தற்போதுள்ள அணுகல் புள்ளியுடன் இணைக்கும் திறன் ஆகும். அது மட்டுமல்லாமல், அதன் அணுகல் புள்ளியை உருவாக்க முடியும், எனவே மற்ற சாதனங்கள் அதனுடன் இணைக்க முடியும்.

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

உள்ளடக்கம்:

1. ESP32 இணைய சேவையகம்

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







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



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



  • நிலையம்
  • அணுகல் புள்ளி
  • நிலையம் மற்றும் அணுகல் புள்ளி இரண்டும்

ESP32 இன் மூன்று முறைகள் பற்றிய நுண்ணறிவைப் பெற இந்தக் கட்டுரையைப் பார்க்கலாம்:





Arduino IDE ஐப் பயன்படுத்தி ESP32 அணுகல் புள்ளியை (AP) அமைப்பது எப்படி

2. Arduino IDE ஐப் பயன்படுத்தி ESP32 இணைய சேவையகத்தை எவ்வாறு உருவாக்குவது

Arduino IDE ஐப் பயன்படுத்தி ESP32 இணைய சேவையகத்தை உருவாக்க, நீங்கள் ESP32 ஐ அணுகல் புள்ளியுடன் இணைத்து இணைய சேவையகத்திற்கான IP முகவரியை உருவாக்கலாம். உங்கள் சர்வர் இடைமுகத்தை வடிவமைக்க சில HTML மற்றும் CSS ஐப் பயன்படுத்தலாம்.



ESP32 அணுகல் புள்ளி வேலை செய்வதைப் புரிந்துகொண்டவுடன், Arduino IDE குறியீட்டைப் பயன்படுத்தி ESP32 இணைய சேவையகத்தை எளிதாக வடிவமைக்கலாம். ESP32 இணைய சேவையகக் குறியீடு ESP32 Wi-Fi நூலகத்தைப் பயன்படுத்துகிறது. ESP32ஐ அணுகல் புள்ளியுடன் இணைக்க தேவையான அனைத்து முக்கிய செயல்பாடுகளும் இந்த நூலகத்தில் இருப்பதால், இது எங்கள் வேலையை எளிதாக்குகிறது.

Arduino IDE குறியீட்டைப் பயன்படுத்தி ESP32 வலை சேவையகத்தை வடிவமைப்போம்.

3. ESP32 வெப் சர்வர் குறியீடு

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

Arduino IDE ஐ திறந்து உங்கள் ESP32 போர்டை அதனுடன் இணைக்கவும்:

Arduino IDE இல் ESP32 போர்டை நிறுவுதல்

ESP32 போர்டு இணைக்கப்பட்டதும், பின்வரும் குறியீட்டை உங்கள் போர்டில் பதிவேற்றவும்.

//*************

Linuxhint.com
LED களை கட்டுப்படுத்த ESP32 வலை சேவையகம்

****************
// நூலகத்தை இறக்குமதி செய் க்கான Wi-Fi இணைப்பு
# அடங்கும்
// உங்கள் வைஃபை பெயர் மற்றும் கடவுச்சொல்லை உள்ளிடவும்
கான்ஸ்ட் சார் * ssid = 'ESP32' ;
கான்ஸ்ட் சார் * கடவுச்சொல் = '123456789' ;
// போர்ட் எண்ணைத் தேர்ந்தெடுக்கவும் க்கான வலை சேவையகம்
வைஃபை சர்வர் சர்வர் ( 80 ) ;
// வலை கோரிக்கையை சேமிக்க ஒரு மாறியை உருவாக்கவும்
சரம் தலைப்பு;
// வெளியீடுகளின் நிலையை சேமிக்க மாறிகளை உருவாக்கவும்
சரம் வெளியீடு26நிலை = 'ஆஃப்' ;
String output27State = 'ஆஃப்' ;
// மாறிகளுக்கு வெளியீட்டு ஊசிகளை ஒதுக்கவும்
const int output26 = 26 ;
const int output27 = 27 ;
கையொப்பமிடப்படாத நீண்ட தற்போதைய நேரம் = மில்லி ( ) ;
கையொப்பமிடாத நீண்ட முந்தைய காலம் = 0 ;
// தேர்ந்தெடு நேரம் அளவு க்கான வலை கோரிக்கை உள்ளே மில்லி விநாடிகள்
நிலையான நீண்ட நேரம் நேரம் = 2000 ;
வெற்றிட அமைப்பு ( ) {
தொடர்.தொடங்கு ( 115200 ) ;
// வெளியீட்டு ஊசிகளை அமைக்கவும் என வெளியீடுகள்
பின் பயன்முறை ( output26, அவுட்புட் ) ;
பின் பயன்முறை ( output27, அவுட்புட் ) ;
// வெளியீடுகளை அணைக்கவும்
டிஜிட்டல் ரைட் ( வெளியீடு26, குறைந்த ) ;
டிஜிட்டல் ரைட் ( வெளியீடு27, குறைந்த ) ;
// வைஃபை நெட்வொர்க்குடன் இணைக்கவும்
தொடர்.அச்சு ( 'இணைக்கிறது' ) ;
Serial.println ( ssid ) ;
WiFi.தொடங்கு ( ssid, கடவுச்சொல் ) ;
// காத்திரு வரை இணைப்பு நிறுவப்பட்டது
போது ( வைஃபை.நிலை ( ) ! = WL_CONNECTED ) {
தாமதம் ( 500 ) ;
தொடர்.அச்சு ( '.' ) ;
}
Serial.println ( '' ) ;
Serial.println ( 'வைஃபை இணைக்கப்பட்டுள்ளது.' ) ;
Serial.println ( 'ஐபி முகவரி: ' ) ;
Serial.println ( WiFi.localIP ( ) ) ;
சர்வர்.தொடங்கு ( ) ;
}

வெற்றிட வளையம் ( ) {
WiFiClient கிளையன்ட் = server.available ( ) ; // காசோலை க்கான புதிய வாடிக்கையாளர்கள்
என்றால் ( வாடிக்கையாளர் ) { // வாடிக்கையாளர் இணைக்கப்பட்டிருந்தால்,
தற்போதைய நேரம் = மில்லி ( ) ;
முந்தைய நேரம் = தற்போதைய நேரம்;
Serial.println ( 'புதிய வாடிக்கையாளர்.' ) ; // தொடர் துறைமுகத்திற்கு தெரிவிக்கவும்
சரம் தற்போதைய வரி = '' ; // கிளையன்ட் தரவைச் சேமிக்க ஒரு சரத்தை உருவாக்கவும்
போது ( கிளையன்ட்.இணைக்கப்பட்டது ( ) && தற்போதைய நேரம் - முந்தைய நேரம் = 0 ) {
Serial.println ( 'ஜிபிஐஓ 26 ஆன்' ) ;
வெளியீடு26நிலை = 'ஆன்' ;
டிஜிட்டல் ரைட் ( வெளியீடு26, உயர் ) ;
} வேறு என்றால் ( header.indexOf ( 'GET /26/off' ) > = 0 ) {
Serial.println ( 'ஜிபிஐஓ 26 ஆஃப்' ) ;
வெளியீடு26நிலை = 'ஆஃப்' ;
டிஜிட்டல் ரைட் ( வெளியீடு26, குறைந்த ) ;
} வேறு என்றால் ( header.indexOf ( 'GET /27/on' ) > = 0 ) {
Serial.println ( 'ஜிபிஐஓ 27 ஆன்' ) ;
வெளியீடு27நிலை = 'ஆன்' ;
டிஜிட்டல் ரைட் ( வெளியீடு27, உயர் ) ;
} வேறு என்றால் ( header.indexOf ( 'GET /27/off' ) > = 0 ) {
Serial.println ( 'ஜிபிஐஓ 27 ஆஃப்' ) ;
வெளியீடு27நிலை = 'ஆஃப்' ;
டிஜிட்டல் ரைட் ( வெளியீடு27, குறைந்த ) ;
}

வாடிக்கையாளர்.println ( '' ) ;
வாடிக்கையாளர்.println ( '' ) ;
வாடிக்கையாளர்.println ( '<இணைப்பு rel=' சின்னம் ' href=' தகவல்கள்:, '>' ) ;
// பொத்தான்களை வடிவமைக்க CSS
வாடிக்கையாளர்.println ( '