NAH020:Homebaked Raspberry Pi + Django Home Server.
เราอยู่ในจุดสูงสุดของการควบคุมทุกรายการภายในบ้านของเราโดยใช้รหัสอินเทอร์เน็ตและคอมพิวเตอร์ขนาดเล็ก ไมโครคอนโทรลเลอร์เป็นคอมพิวเตอร์ราคาไม่แพง (เช่นราคาไม่แพง 35 บาท) ที่สามารถเจาะระบบเพื่อสร้างแอปพลิเคชันเว็บของคุณเองสำหรับเครือข่ายภายในของคุณ นี่ใหญ่มาก ขออย่าเข้าใจเรื่องนี้ในแง่ใด ๆ คุณใช่คุณสามารถเขียนโค้ดพื้นฐานและควบคุมทุกชิ้นอิเล็กทรอนิกส์ในบ้านของคุณได้หรือไม่? ที่น่ากลัวสวย ตอนนี้เรายังคงดำเนินไปเพียงเล็กน้อยก่อนที่สินค้าอิเล็กทรอนิกส์ทุกชิ้นจะเชื่อมต่อกับอินเทอร์เน็ต แต่เมื่อได้คุณจะสามารถใช้สิ่งที่ได้เรียนรู้ที่นี่เพื่อควบคุมรายการเหล่านี้ได้ตามต้องการ เทคโนโลยีที่เราใช้คือ ราสเบอร์รี่ Pi 3 รุ่น B Django 1.10 Python 3 Apache2 & mod_wsgi (สำหรับเว็บเซิร์ฟเวอร์) สิ่งที่เราทำในหลักสูตรนี้สามารถนำมาใช้กับ Django และรุ่นใหม่ ๆ ของ Raspberry Pi ที่อาจเกิดขึ้นได้เช่นกัน
วัตถุประสงค์
– เรียนรู้เกี่ยวกับ การตั้งค่าระบบปฏิบัติการ Raspbian ที่เล็กที่สุดใน RPi
– เรียนรู้เกี่ยวกับ ติดตั้ง Python virtual environment
– เรียนรู้เกี่ยวกับ ติดตั้งและใช้ Flask ซึ่งเป็นเว็บ micro-framework แบบ Python
– เรียนรู้เกี่ยวกับ ติดตั้งและใช้ uWSGI เป็นเซิร์ฟเวอร์แอ็พพลิเคชันสำหรับ Flask
– เรียนรู้เกี่ยวกับ ติดตั้งและใช้เว็บเซิร์ฟเวอร์ขนาดเบาของ Nginx
– เรียนรู้เกี่ยวกับ การใช้ RPIO GPIOs เป็นอินพุตและเอาต์พุตแบบดิจิตอล
– เรียนรู้เกี่ยวกับ การใช้ DHT22 ความชื้นและอุณหภูมิเซ็นเซอร์
– เรียนรู้เกี่ยวกับ ติดตั้งและใช้ฐานข้อมูล SQLite
– เรียนรู้เกี่ยวกับ การใช้ Google Chart API เพื่อสร้างการแสดงภาพของข้อมูลเซ็นเซอร์
– เรียนรู้เกี่ยวกับ การใช้ JQuery เพื่อเพิ่มการโต้ตอบกับเว็บเพจ
กลุ่มเป้าหมาย
– ความรู้พื้นฐานเกี่ยวกับ Python, Javascript (jQuery) และ HTML
– IT Managers
– นักเรียน/นักศึกษา/ผู้ประกอบการ และ Freelance
– กลุ่มผู้สนใจทั่วไป
ความรู้พื้นฐาน
– ความรู้พื้นฐานเกี่ยวกับการเขียนโปรแกรม Python
– ความรู้พื้นฐานเกี่ยวกับการจัดการ Raspberry Pi
– ความรู้พื้นฐานเกี่ยวกับเซ็นเซอร์ DHT11 หรือ DHT22
– ความรู้พื้นฐานเกี่ยวกับไฟ LED 5 มม
– ความรู้พื้นฐานเกี่ยวกับตัวต้านทาน- แนะนำการเขียน ภาษา C เบื้องต้น- แนะนำการเขียน ภาษา C เบื้องต้น
คุณสมบัตรของหลักสูตร
- บรรยาย 74
- แบบทดสอบ 0
- ระยะเวลา 50 hours
- ระดับทักษะ All levels
- ภาษา English
- นักเรียน 0
- การประเมินผล Yes
-
ขั่วโมงที่ 1-4
เนื้อหาการอบรม
- – บทนำเกี่ยวกับหลักสูตรและเทคโนโลยีที่เราจะใช้ในการเขียนโปรแกรม
- – บทนำเกี่ยวกับ Raspberry Pi
- – บทนำเกี่ยวกับ Python
- – แนะนำการเขียน ภาษา C เบื้องต้น
- – การติดตั้งโปรแกรม Visual Studio, C#, Adobe Dreamweaver, Microsoft Netbeen, ฯลฯ
- – การเรียกใช้โปรแกรม Visual Studio, C#, Adobe Dreamweaver, Microsoft Netbeen, ฯลฯ
-
ขั่วโมงที่ 4-8
- – เรียนรู้เกี่ยวกับ คุณสมบัติภาษาขั้นพื้นฐานใน C
- – เรียนรู้เกี่ยวกับ IDE Netbeans
- – เรียนรู้เกี่ยวกับ Linux เบื้องต้น
- – เรียนรู้เกี่ยวกับ IDE Geany
- – เรียนรู้เกี่ยวกับ Coding Environment
- – เรียนรู้เกี่ยวกับ การควบคุมมอเตอร์เดี่ยวโดยใช้ breadboard
- – เรียนรู้เกี่ยวกับ โครงการพื้นฐานที่มี Buzzer
- – เรียนรู้เกี่ยวกับ การอ่านจากเซ็นเซอร์ DHT11
- – เรียนรู้เกี่ยวกับ ตัวอักษร และสตริง
- – เรียนรู้เกี่ยวกับ ฟังก์ชัน fflush () (โปรแกรมนับถอยหลัง)
- – เรียนรู้เกี่ยวกับ ความต้องการฮาร์ดแวร์
- – เรียนรู้เกี่ยวกับ การออกแบบและประกอบฮาร์ดแวร์
- – เรียนรู้เกี่ยวกับ การเขียนโค้ดด้วย Python
- – เรียนรู้เกี่ยวกับ การตั้งค่าไลบรารี WiringPi
- – เรียนรู้เกี่ยวกับ พื้นฐานของการเขียนโปรแกรม Python
- – เรียนรู้เกี่ยวกับ ราสเบอร์รี่ Pi และ Physical Computing
- – เรียนรู้เกี่ยวกับ การใช้แฟลช และไฟ LED กะพริบ
- – เรียนรู้เกี่ยวกับ การถ่ายภาพโดยใช้ระบบ RaspiCam ()
- – เรียนรู้เกี่ยวกับ Wiring Pi และ Pulse Width Modulation
- – เรียนรู้เกี่ยวกับ โพเทนชิมิเตอร์เมมเบรน (Membrane potentiometer)
- – เรียนรู้เกี่ยวกับ แป้นพิมพ์ส่วนที่ 1 บทนำ
- – เรียนรู้เกี่ยวกับ การสร้างเสียงรบกวนด้วยเสียงพาสซีฟ
- – เรียนรู้เกี่ยวกับ แป้นพิมพ์ส่วนที่ 2 สายไฟเชื่อมต่อแบบขนาน
- – เรียนรู้เกี่ยวกับ แป้นพิมพ์ส่วนที่ 3 ภาพวาดการเชื่อมต่อแบบขนาน
- – เรียนรู้เกี่ยวกับ แป้นพิมพ์ส่วนที่ 4 การต่อสายเดี่ยว
- – เรียนรู้เกี่ยวกับ แป้นพิมพ์ส่วนที่ 5 ข้อสรุปการเชื่อมต่อสายเดี่ยว
- – เรียนรู้เกี่ยวกับ การควบคุมแขน
- – เรียนรู้เกี่ยวกับ ตัวเข้ารหัสแบบโรตารี่ส่วนที่ 1 ความเป็นมาและหลักการทำงาน
- – เรียนรู้เกี่ยวกับ ตัวเข้ารหัสแบบโรตารี่ส่วนที่ 2 การสาธิตวงจรง่ายๆ
- – เรียนรู้เกี่ยวกับ ตัวเข้ารหัสแบบโรตารี่ส่วนที่ 3 การเพิ่ม Debouncing
- – เรียนรู้เกี่ยวกับ เซ็นเซอร์ลายนิ้วมือตอนที่ 1 เกี่ยวกับ
- – เรียนรู้เกี่ยวกับ เซ็นเซอร์ลายนิ้วมือตอนที่ 2 การเดินสายไฟการลงทะเบียนและการจดจำ
- – เรียนรู้เกี่ยวกับ เซ็นเซอร์ลายนิ้วมือตอนที่ 3 แอปการสาธิตพร้อมกับล็อคไฟฟ้า
-
ชั่วโมงที่ 8-12
- – เรียนรู้เกี่ยวกับ การทำความเข้าใจโค้ด – การจับภาพการป้อนข้อมูลของผู้ใช้
- – เรียนรู้เกี่ยวกับ การเขียนโปรแกรมฐาน ArmBot
- – เรียนรู้เกี่ยวกับ ทำความเข้าใจเกี่ยวกับโค้ด – ส่งผ่านอินพุทที่กำหนดโดยผู้ใช้เพื่อควบคุมมอเตอร์ต่างๆ
- – เรียนรู้เกี่ยวกับ LCD และ Keypad mini-project
- – เรียนรู้เกี่ยวกับ จอ LCD TFT
- – เรียนรู้เกี่ยวกับ เซเว่นเมนท์ไฟ LED แสดงส่วนที่ 1 บทนำและชุดประกอบ
- – เรียนรู้เกี่ยวกับ เซเว่นเมนท์ไฟ LED แสดงส่วนที่ 2 แบบร่าง
- – เรียนรู้เกี่ยวกับ การควบคุมจอแสดงผล LED 8×8 ด้วยตัวควบคุม MAX7219
- – เรียนรู้เกี่ยวกับ การควบคุมการแสดงผล Matrix แบบ 8×8 จำนวนมาก
- – เรียนรู้เกี่ยวกับ การแสดงข้อมูลแอ็ตทริบิวเตอร์มาตรวัด ADXL335 บนจอภาพแสดงผลแบบ LED 8×8
- – เรียนรู้เกี่ยวกับ มอเตอร์ (Motors)
- – เรียนรู้เกี่ยวกับ มอเตอร์กระแสตรง
- – เรียนรู้เกี่ยวกับ มอเตอร์เซอร์โว (Servo motors)
- – เรียนรู้เกี่ยวกับ มอเตอร์เซอร์โวและจอแอลซีดีมินิโปรเจค
- – เรียนรู้เกี่ยวกับ มอเตอร์ Stepper ส่วนที่ 1 บทนำ
- – เรียนรู้เกี่ยวกับ มอเตอร์ Stepper ส่วนที่ 2 การเชื่อมต่อมอเตอร์แบบ unipolar un-geared
- – เรียนรู้เกี่ยวกับ มอเตอร์ Stepper ส่วนที่ 3 การควบคุมมอเตอร์แบบ unipolar un-geared
- – เรียนรู้เกี่ยวกับ มอเตอร์ Stepper ส่วนที่ 4 การเชื่อมต่อมอเตอร์แบบ unipolar
- – เรียนรู้เกี่ยวกับ มอเตอร์ Stepper ส่วนที่ 5 การใช้ไลบรารี AccelStep
- – เรียนรู้เกี่ยวกับ EasyDriver พร้อมมอเตอร์พ่นสี NEMA17
-
ชั่วโมงที่ 12-16
- – เรียนรู้เกี่ยวกับ ส่วนติดต่อผู้ใช้แบบกราฟิกโดยใช้ Tkinter
- – เรียนรู้เกี่ยวกับ การทำความเข้าใจเกี่ยวกับโค้ด – GUI โดยใช้ Tkinter
- – เรียนรู้เกี่ยวกับ การทำความเข้าใจเกี่ยวกับโค้ด – GUI โดยใช้ Tkinter
- – เรียนรู้เกี่ยวกับ Arduino ควบคุมเว็บเซิร์ฟเวอร์
- – เรียนรู้เกี่ยวกับ การควบคุมมอเตอร์ด้วยเว็บเบราเซอร์
- – เรียนรู้เกี่ยวกับ การเข้าสู่ระบบเว็บเพื่อ Nimbits
- – เรียนรู้เกี่ยวกับ การสื่อสารแบบไร้สาย
- – เรียนรู้เกี่ยวกับ การเชื่อมต่อไร้สายด้วย Bluetooth
- – เรียนรู้เกี่ยวกับ การเชื่อมต่อ Wi-Fi
- – เรียนรู้เกี่ยวกับ การเชื่อมต่อ Wifi การอัพเกรดโมดูล CC3000
- – เรียนรู้เกี่ยวกับ การใช้โมดูลตัวรับส่งสัญญาณ NRF24L01
- – เรียนรู้เกี่ยวกับ Bluetooth Low Energy
- – เรียนรู้เกี่ยวกับ การจัดเก็บข้อมูลภายนอก
- – เรียนรู้เกี่ยวกับ การอ่านและเขียนลงในการ์ด SD
- – เรียนรู้เกี่ยวกับ EEPROM (ภายในและภายนอก)