Tôi đã tự làm robot với Raspberry Pi và Arduino như thế nào ? - Phần 2: Điều Khiển đèn Led từ giao diện Web

Mô tả dự án: 

Bài trước chúng ta đã thiết lập những cơ bản cần thiết cho webserver Raspi. Hôm nay mình tiếp tục vận dụng để phát triển một phương thức điều khiển.laugh

Lập trình

1. Lập trình trang web

a. Tạo button bật tắt trong file index.html

<button type="button" id="on">Bật Đèn</button><br>
<button type="button" id="off">Tắt Đèn</button><br>

b. Cách để gọi file php thực thi của mình mà không phải load lại trang

  <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
  <script type="text/javascript">
   $(document).ready(function(){
    $('#on').mousedown(function(){     // Chỗ on là bạn thay cái id mà bạn đặt cho button 
     var a = new XMLHttpRequest();
     a.open("GET", "batden.php");   // thay cái batden.php thành file thực thi của bạn
     a.onreadystatechange=function(){
      if(a.readyState==4){
       if(a.status == 200){
       }
       else{
       alert("Error")
       }
      }
     }
     a.send();
    });
$(document).ready(function(){
    $('#off').mousedown(function(){     // Chỗ off là bạn thay cái id mà bạn đặt cho button 
     var a = new XMLHttpRequest();
     a.open("GET", "tatden.php");   // thay cái tatden.php thành file thực thi của bạn
     a.onreadystatechange=function(){
      if(a.readyState==4){
       if(a.status == 200){
       }
       else{
       alert("Error")
       }
      }
     }
     a.send();
    });
   });
  </script>

2. Tạo file PHP thực thi

cd /var/www/html/
sudo nano batden.php

Nội dụng file này là gọi một file python

<?php
        exec('sudo python /var/www/html/python/batden.py');
?>
Ctrl + x
y
sudo nano tatden.php
<?php
        exec('sudo python /var/www/html/python/tatden.py');
?>
Ctrl + x
y

3. Tạo file python

cd /var/www/html/
sudo mkdir python
cd python
sudo nano batden.py

Các bạn copy code này vào

import RPi.GPIO as GPIO 
GPIO.setmode(GPIO.BOARD) 
GPIO.setup(7, GPIO.OUT) 
GPIO.output(7,True) 
Ctrl + x
y
Tiếp theo là tạo file python tắt đèn:
sudo nano tatden.py
import RPi.GPIO as GPIO 
GPIO.setmode(GPIO.BOARD) 
GPIO.setup(7, GPIO.OUT) 
GPIO.output(7,False)
Ctrl + x
y

4. Cấp quyền cho nó đã nhé

sudo visudo
www-data ALL=(ALL) NOPASSWD: ALL
Ctrl + x
y
sudo chmod 777 /var/www/html/

xong các bạn vào từng thư mục nhập lệnh này thử:

ls

Nếu thấy tất cả màu xanh lá cây là oke cheeky

Nếu vẫn không được thì bạn chmod từng tập tin thôi !

6. Bây giờ gắn mạch và test cheeky

Kết luân

Yeah, bây giờ chúng ta đã điều khiển được một Led đơn giản qua trang web rồi laugh. Các bạn hãy thử tạo một giao diện thiệt đẹp nha!

Các bạn hãy like và share để mình có động lực chiến tiếp nha devilyesenlightened

Đây là video thành phẩm đơn giản . Chỉnh hd xem nhé yes

Youtube: 
lên
14 thành viên đã đánh giá bài viết này hữu ích.
Các dự án được truyền cảm hứng

Select any filter and click on Apply to see results

Các bài viết cùng tác giả

Tôi tự làm Robot với Raspberry Pi và Arduino thê nào? - Phần 5: Điều khiển Robot qua mạng WAN

Tiếp theo là bài 5 laughwink. Hôm nay chúng ta sẽ tìm hiểu một số kiến thức về điều khiển qua mạng, và từ đó mình có thể phát triển để điều khiển được Robot của mình ở bất cứ nơi đâu nhằm phục vụ cho những dự án IoT của mình @@. 

lên
10 thành viên đã đánh giá bài viết này hữu ích.
Từ khóa: 

Thiết Bị Bật Tắt Máy Phun Sương Tự Động

Heoheo, đây là dự an mình vừa làm cho cậu mình làm trong trang trại nuôi nấm. Vì điều kiện nấm phải có khí hậu mát mẻ nên chúng ta phải lắp cho nó một hệ thống phun sương để duy trì một nhiệt độ thích hợp để nấm sinh trưởng. Chúng ta có thể dùng cảm biến nhiệt độ, độ ẩm để điều chỉnh việc tự động phun sương nhưng việc này thì khá là tốn kém cho chủ nhà, vì nhiệt độ ở nước ta hơi khắc nghiệt :D sẽ thay đổi liên tục và có thể bị nhiễu dẫn đến ko chính xác. Nên chúng ta có giải pháp là khoảng bao nhiêu phút một lần tùy theo thời tiết.

lên
34 thành viên đã đánh giá bài viết này hữu ích.