Chapter 9: Raspberry pi server | পর্ব ৯ঃ রাসবেরি পাই সার্ভার

How to make a local server using Raspberry pi.

এই এক্সপেরিমেন্টে আমরা একটি রাসবেরি পাইভিত্তিক সার্ভার তৈরী করব। এতে করে একটি ওয়েবপেইজের মাধ্যমে রাসবেরি পাইয়ের জিপিআইও পিনগুলোকে কন্ট্রোল করা সম্ভব হবে। এখানে আমরা রাসবেরি পাইয়ের ১০ নাম্বার পিনের সাথে সংযুক্ত একটি এলইডিকে অন-অফ করব।

প্রয়োজনীয় যন্ত্রপাতি পরিমাণ প্রোডাক্ট লিংক
Raspberry Pi 4 Model B 4GB Complete Set 1   এখানে ক্লিক করুন
Breadboard 1   এখানে ক্লিক করুন
LED-RED 1   এখানে ক্লিক করুন
Male to female jumpers 2   এখানে ক্লিক করুন
100ohm ¼ watt resistor 1   এখানে ক্লিক করুন

সার্কিটঃ নিচের সার্কিট কানেকশনটি সম্পন্ন করুন।

কোডঃ নিচের কোডটি রাসবেরি পাইতে আপলোড করি।

import RPi.GPIO as blink_led
blink_led.setmode(blink_led.BOARD)
blink_led.setup(10,blink_led.OUT)
import socket

HOST, PORT = '', 8888

listen_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
listen_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
listen_socket.bind((HOST, PORT))
listen_socket.listen(1)
print('Serving HTTP on port')
print(PORT)

while True:
    client_connection, client_address = listen_socket.accept()
    request_data = client_connection.recv(1024)
    print(request_data.decode('utf-8'))

    http_response = b"""\
HTTP/1.1 200 OK

<html>
    <head>
        <title>Raspberry pi server!</title>
    </head>
    <body>
        <h1>Raspberry pi server</h1>
        <font color="green">Congratulations! The Raspberry pi Server is working!</font>
       
        
        <p>A LED is attached to pin#10 </p>
	
	<p><a href=\"/LOCK=ON\"\"><input type="button" style="background-color:white;color:black;width:150px;
    height:40px;" value="Turn On LED"></a>
	
	<a href=\"/LOCK=OFF\"\"><input type="button" style="background-color:black;color:white;width:150px;
    height:40px;" value="Turn Off LED"></a>

	
	<p><a href="http://www.techshopbd.com/">Visit for electronic components</a>
	<p><a href="http://blog.techshopbd.com/">Visit for electronics blogs</a>
	
    </body>



"""
    if request_data.decode('utf-8').find('LOCK=ON')>=0:
       blink_led.output(10,True)  
       print ('I am on')
    elif request_data.decode('utf-8').find('LOCK=OFF')>=0:
       blink_led.output(10,False)   
       print('I am off') 

    client_connection.sendall(http_response)
    client_connection.close()

প্রোগ্রাম রান করার পর serving http on port 8888 মেসেজটি দেখা যাবে।

ওয়েব ব্রাউজারে localhost:8888 টাইপ করে Enter চাপলে নিচের ওয়েবপেজটি প্রদর্শিত হবে।

ওয়েবপেইজের Turn On LED এবং Turn Off LED বাটন ক্লিক করার মাধ্যমে এলইডি অন-অফ করা হবে।

5/5 - (1 vote)
Share with your friends
Default image
A. R
Articles: 116

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.