Giới thiệu dự án
Sự bùng nổ của cuộc Cách mạng Công nghiệp 4.0 và làn sóng Internet of Things (IoT) đã tái định hình phương thức quản lý thiết bị điện trong cả dân dụng lẫn công nghiệp. Theo thống kê từ Statista, số lượng thiết bị IoT kết nối toàn cầu đã vượt mốc 15 tỷ thiết bị vào giai đoạn 2020–2023, với tốc độ tăng trưởng kép hàng năm (CAGR) đạt trên 16%. Tuy nhiên, các hệ thống điều khiển truyền thống (như công tắc cơ khí, tủ relay rời rạc hoặc vi điều khiển 8-bit đơn giản) bộc lộ nhiều điểm nghẽn nghiêm trọng: thiếu khả năng giám sát trạng thái thời gian thực từ xa, không có cơ chế ghi nhận nhật ký (logging) tiêu thụ và thời gian hoạt động, cũng như không thể đồng bộ hóa dữ liệu giữa các nền tảng Web và Mobile.
┌────────────────────────────────────────┐
│ Client Interface (Web & App) │
└───────────────────┬────────────────────┘
│ HTTP / JSON
▼
┌────────────────────────────────────────────────────────────────────────────┐
│ Intel Edison IoT Platform │
│ ┌───────────────────────┐ ┌───────────────────────────┐ │
│ │ Embedded Web Server │ ◄──────────────► │ Yocto Linux Control Core │ │
│ │ (Apache + PHP) │ MySQL Database │ (GPIO / libmraa) │ │
│ └───────────────────────┘ └─────────────┬─────────────┘ │
└───────────────────────────────────────────────────────────┼────────────────┘
│ Logic Level 1.8V
▼
┌───────────────────────────┐
│ Opto PC817 & Transistor │
│ Driver Circuit Stage │
└─────────────┬─────────────┘
│ 12V Trigger
▼
┌───────────────────────────┐
│ 8-Channel Relay Module │
│ (AC 220V / 10A Load) │
└───────────────────────────┘
Đồ án "Thiết kế hệ thống điều khiển và giám sát thiết bị qua Webserver sử dụng Kit Intel Edison" được thực hiện bởi nhóm nghiên cứu tại Trường Đại học Sư phạm Kỹ thuật TP.HCM nhằm giải quyết triệt để các hạn chế trên. Đề tài tập trung xây dựng một giải pháp nhúng hoàn chỉnh, kết hợp máy tính nhúng hiệu năng cao với hệ thống Web Server nội tại, cơ sở dữ liệu quan hệ và ứng dụng Android chuyên dụng.
Mục tiêu kỹ thuật cụ thể của dự án
- Làm chủ nền tảng máy tính nhúng: Khai thác tài nguyên phần cứng của Kit Intel Edison tích hợp kiến trúc System-on-Chip (SoC) Intel Atom 2 nhân 500 MHz chạy hệ điều hành Yocto Linux.
- Thiết kế phần cứng công suất cách ly an toàn: Thiết kế và thi công bo mạch điều khiển công suất 8 kênh AC 220V sử dụng Relay cách ly quang (Optocoupler), đáp ứng tải dòng danh định tối đa 10A/kênh.
- Phát triển Web Server và Cơ sở dữ liệu nhúng: Triển khai trực tiếp dịch vụ Web (Apache, PHP 7.x, MySQL 5.7) trên Intel Edison, cho phép giám sát trạng thái On/Off và thời gian vận hành liên tục.
- Phát triển ứng dụng Android native: Xây dựng ứng dụng điều khiển di động giao tiếp thông qua giao thức HTTP RESTful API.
- Cơ chế điều khiển đa phương thức: Đảm bảo khả năng phản hồi đồng thời giữa 3 kênh: Phím bấm cơ học trực tiếp (Push buttons), Trình duyệt Web và Ứng dụng Smartphone với độ trễ chuyển mạch $<150\text{ ms}$.
Phạm vi và giới hạn hệ thống
- Bộ xử lý trung tâm: Intel Edison Module kết hợp Mini Breakout Board.
- Số lượng tải quản lý: 8 tải AC 220V/1W (mô phỏng hệ thống chiếu sáng gia dụng).
- Môi trường vận hành mạng: Mạng cục bộ (LAN) và mạng diện rộng (WAN) thông qua Wi-Fi chuẩn IEEE 802.11 a/b/g/n (băng tần kép 2.4 GHz và 5 GHz).
- Giới hạn an toàn: Không áp dụng trực tiếp cho các tải động cơ công nghiệp siêu trường siêu trọng vượt quá dòng khởi động định mức của relay (10A đỉnh).
Phân tích và thiết kế giải pháp
Phân tích hiện trạng và khoảng cách kỹ thuật
| Tiêu chí kỹ thuật |
Giải pháp Vi điều khiển cơ bản (Arduino Uno + ESP8266) |
Giải pháp Single Board Computer (Raspberry Pi 3 Model B) |
Giải pháp Đồ án (Intel Edison + Mini Breakout) |
| Kiến trúc SoC / CPU |
ATmega328P 8-bit @ 16 MHz + ESP8266 32-bit |
Broadcom BCM2837 64-bit Quad-Core ARM Cortex-A53 @ 1.2 GHz |
Intel Atom 32-bit Dual-Core 22nm @ 500 MHz + 32-bit Quark MCU |
| Bộ nhớ (RAM / Storage) |
2 KB SRAM / 32 KB Flash |
1 GB LPDDR2 / Thẻ nhớ MicroSD ngoài |
1 GB LPDDR3 (1033 MT/s) / 4 GB eMMC Flash tích hợp |
| Khả năng Web Server |
Rất hạn chế (chỉ chạy Static HTML siêu nhẹ, dễ tràn RAM) |
Rất mạnh nhưng tiêu thụ nhiều điện năng (5V/2.5A $\approx$ 12.5W) |
Rất tốt (chạy mượt LAMP stack, tốn ít năng lượng: 7–15V DC, $\sim 1\text{W}$ idle) |
| Độ tin cậy lưu trữ |
Không có DB quan hệ nội tại |
Dễ lỗi hệ điều hành khi mất điện đột ngột do hỏng thẻ nhớ SD |
Ổn định cao nhờ bộ nhớ NAND eMMC tích hợp chip |
| Kích thước module |
Cồng kềnh khi ghép shield ($68.6 \times 53.4\text{ mm}$) |
$85.6 \times 56.5\text{ mm}$ |
Siêu nhỏ gọn ($35.5 \times 25.0 \times 3.9\text{ mm}$ - cỡ thẻ SD) |
Phân tích MoSCoW cho yêu cầu hệ thống:
- Must Have (Bắt buộc): Bật/tắt 8 thiết bị AC qua Relay; Điều khiển qua nút bấm vật lý và Web; Đồng bộ trạng thái tức thời lên MySQL DB.
- Should Have (Nên có): App Android native giao tiếp API; Lưu vết lịch sử bật/tắt và tính toán tổng thời gian thiết bị hoạt động.
- Could Have (Có thể có): Giao thức WebSocket để cập nhật không cần reload trang; Phân quyền người dùng (Admin/User).
- Won't Have (Chưa thực hiện): Tích hợp điều khiển bằng giọng nói offline hoặc AI nhận diện thói quen người dùng.
Thiết kế kiến trúc phần cứng và tính toán thông số mạch
Hệ thống điều khiển trung tâm sử dụng Kit Intel Edison kết hợp mạch kích Relay cách ly quang gồm 4 khối chính: Khối xử lý trung tâm, Khối đệm cách ly quang - công suất, Khối nút nhấn ngoại vi, và Khối nguồn.
┌─────────────────────────┐
│ Adapter 12V-2A │
└───────────┬─────────────┘
│
┌───────────────────────┴───────────────────────┐
│ 12V DC │ 12V DC (Relay VCC)
▼ ▼
┌───────────────┐ GPIO Logic (1.8V) ┌───────────────────────┐
│ Intel Edison │──────────────────────────►│ PC817 Optocoupler │
│ Mini Breakout │ └───────────┬───────────┘
└───────┬───────┘ │
│ GPIO Input (1.8V Pull-down) ▼
▲ ┌───────────────────────┐
│ │ PNP Transistor A1015 │
┌───────┴───────┐ └───────────┬───────────┘
│ 8 Pushbuttons │ │ Coil Current 30mA
│ Array (10kΩ) │ ▼
└───────────────┘ ┌───────────────────────┐
│ Songle Relay 12VDC │
│ (Diode 1N4007 clamp) │
└───────────┬───────────┘
│ AC 220V Switch
▼
┌───────────────────────┐
│ 8x Load (220V Lamps) │
└───────────────────────┘
1. Tính toán mạch kích Relay cách ly quang
Để đảm bảo an toàn tuyệt đối cho vi xử lý Intel Edison (vốn hoạt động ở mức logic nhạy cảm $1.8\text{V}$), hệ thống sử dụng Opto cách ly quang PC817 kết hợp transistor PNP A1015 điều khiển cuộn hút Relay 12V.
- Thông số cuộn hút Relay 12V: Điện áp định mức $U_L = 12\text{V}$, dòng danh định cuộn dây $I_L = 30\text{mA}$.
- Điện trở cuộn dây Relay:
$$R_L = \frac{U_L}{I_L} = \frac{12\text{V}}{30\text{mA}} = 400,\Omega$$
- Tính toán chọn Transistor đệm (A1015):
Dòng điện cực thu cực đại yêu cầu: $I_C > I_L = 30\text{mA}$. Transistor PNP A1015 có $I_{C,\max} = 150\text{mA}$, hệ số khuếch đại dòng $h_{FE} \in [70, 400]$. Chọn điểm làm việc an toàn tại $h_{FE} = 100$.
Hệ số bão hòa yêu cầu:
$$h_{FE} \ge \frac{1.2 \times I_L}{I_{B}} \implies \text{Đạt chuẩn}$$
- Tính toán điện trở phân cực cực gốc ($R_b$):
$$R_b = \frac{V_{CC} \times h_{FE}}{1.2 \times I_L} = \frac{12\text{V} \times 100}{1.2 \times 100\text{mA}} = 10,000,\Omega = 10,\text{k}\Omega$$
Chọn điện trở thực tế $R_b = 10,\text{k}\Omega / 0.25\text{W}$.
- Chống sức điện động ngược: Mắc song song Diode 1N4007 ($V_{RRM} = 1000\text{V}, I_F = 1\text{A}$) phân cực ngược tại 2 đầu cuộn dây relay nhằm triệt tiêu điện áp cảm ứng đột biến khi ngắt dòng qua cuộn cảm.
2. Tính toán phân bổ công suất khối nguồn
Intel Edison tiêu thụ dòng tối đa khoảng $100\text{ mA}$ trên mỗi chân GPIO khi kích hoạt tải logic. Với 19 chân GPIO cấu hình sử dụng đồng thời (8 ngõ vào, 8 ngõ ra, 3 chân điều khiển chức năng):
$$I_{\text{GPIO_total}} = 19 \times 100\text{ mA} = 1900\text{ mA} = 1.9\text{ A}$$
Do đó, bộ nguồn Adapter AC-DC được lựa chọn có thông số danh định $12\text{V} - 2\text{A}$ ($P = 24\text{W}$), đảm bảo hệ số an toàn dư tải $>5%$, duy trì độ gợn điện áp thấp và chống sụt áp khi đồng loạt đóng ngắt 8 relay.
Thiết kế kiến trúc phần mềm và Cơ sở dữ liệu
Kiến trúc ứng dụng phân tầng gồm:
- Lớp Firmware/Kernel (Intel Edison): Chạy Yocto Linux (Kernel 3.10), sử dụng thư viện
libmraa C/C++ hoặc script Python/Bash để ánh xạ trực tiếp các chân GPIO phần cứng với các cổng logic /sys/class/gpio.
- Lớp Dịch vụ Backend (LAMP Stack):
- Apache HTTP Server phiên bản 2.4.
- PHP 7.0 xử lý logic nghiệp vụ và giao tiếp API JSON.
- MySQL Server 5.7 lưu trữ cơ sở dữ liệu quan hệ.
-- Database Schema: db_iot_controller
CREATE TABLE IF NOT EXISTS `tbl_devices` (
`id` INT(11) NOT NULL AUTO_INCREMENT,
`device_name` VARCHAR(50) NOT NULL,
`gpio_pin` INT(11) NOT NULL,
`status` TINYINT(1) NOT NULL DEFAULT 0 COMMENT '0: OFF, 1: ON',
`last_changed` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`total_runtime_seconds` BIGINT(20) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Implementation và kết quả
Quy trình phát triển và hiện thực hóa mã nguồn
Quy trình phát triển trải qua 12 tuần làm việc theo mô hình tuần tự cải tiến (Waterfall with Iterative Verification), từ khảo sát cấu hình chân Mini Breakout, viết driver điều khiển GPIO, lập trình website PHP cho đến xây dựng APK trên Android Studio.
1. Xử lý logic Backend PHP trên Intel Edison Webserver
Tệp tin xử lý nhận lệnh điều khiển từ Client, cập nhật cơ sở dữ liệu và ghi trạng thái ra chân GPIO phần cứng:
<?php
// config.php - Kết nối cơ sở dữ liệu MySQL
$host = "localhost";
$user = "root";
$pass = "root_edison";
$db = "db_iot_controller";
$conn = mysqli_connect($host, $user, $pass, $db);
if (!$conn) {
die(json_encode(["status" => "error", "message" => "Database connection failed"]));
}
// control_api.php - Xử lý điều khiển thiết bị
$device_id = isset($_POST['id']) ? intval($_POST['id']) : 0;
$action = isset($_POST['action']) ? intval($_POST['action']) : 0; // 1: ON, 0: OFF
if ($device_id > 0) {
// 1. Lấy thông tin chân GPIO tương ứng
$query = "SELECT gpio_pin, status FROM tbl_devices WHERE id = $device_id";
$result = mysqli_query($conn, $query);
if ($row = mysqli_fetch_assoc($result)) {
$gpio = $row['gpio_pin'];
// 2. Ghi lệnh ra chân GPIO phần cứng qua Linux sysfs
shell_exec("echo " . $gpio . " > /sys/class/gpio/export");
shell_exec("echo out > /sys/class/gpio/gpio" . $gpio . "/direction");
shell_exec("echo " . $action . " > /sys/class/gpio/gpio" . $gpio . "/value");
// 3. Cập nhật Database
$update_sql = "UPDATE tbl_devices SET status = $action WHERE id = $device_id";
mysqli_query($conn, $update_sql);
echo json_encode(["status" => "success", "device_id" => $device_id, "new_state" => $action]);
}
}
?>
2. Xử lý đồng bộ hóa nút nhấn phần cứng với Yocto Linux Daemon
Một daemon service nền chạy bằng Shell/C trên hệ điều hành Yocto kiểm tra vòng lặp trạng thái chân ngõ vào nút bấm (GPIO 182, 115, 12, 14, 40, 43, 45, 15) sử dụng ngắt hoặc Polling chu kỳ $50\text{ ms}$ có tích hợp giải thuật khử rung phím (Debouncing):
#!/bin/sh
# Debounce Algorithm Script for Intel Edison Button Monitor
BTN_PIN=182
RELAY_PIN=13
# Initialize GPIOs
echo $BTN_PIN > /sys/class/gpio/export 2>/dev/null
echo in > /sys/class/gpio/gpio$BTN_PIN/direction
echo $RELAY_PIN > /sys/class/gpio/export 2>/dev/null
echo out > /sys/class/gpio/gpio$RELAY_PIN/direction
OLD_VAL=0
while true; do
VAL=$(cat /sys/class/gpio/gpio$BTN_PIN/value)
if [ "$VAL" -eq "1" ] && [ "$OLD_VAL" -eq "0" ]; then
usleep 20000 # 20ms debounce delay
VAL_CONFIRM=$(cat /sys/class/gpio/gpio$BTN_PIN/value)
if [ "$VAL_CONFIRM" -eq "1" ]; then
# Toggle Relay Output
CUR_RELAY=$(cat /sys/class/gpio/gpio$RELAY_PIN/value)
NEW_RELAY=$((1 - CUR_RELAY))
echo $NEW_RELAY > /sys/class/gpio/gpio$RELAY_PIN/value
# Sync to local MySQL DB
mysql -u root -proot_edison -D db_iot_controller -e "UPDATE tbl_devices SET status=$NEW_RELAY WHERE gpio_pin=$RELAY_PIN;"
fi
fi
OLD_VAL=$VAL
usleep 50000 # 50ms polling rate
done
3. Client Android Native HTTP Connection
Ứng dụng Android được biên dịch với Android SDK API level 28 (hỗ trợ ngược từ API 16), sử dụng thư viện HttpURLConnection và AsyncTask để gửi Request dạng POST:
// HttpPostHandler.java - Trích xuất từ Android Client
public class HttpPostHandler extends AsyncTask<String, Void, String> {
@Override
protected String doInBackground(String... params) {
String urlString = params[0];
String postData = "id=" + params[1] + "&action=" + params[2];
try {
URL url = new URL(urlString);
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setConnectTimeout(3000); // 3s Timeout
conn.setReadTimeout(3000);
OutputStream os = conn.getOutputStream();
os.write(postData.getBytes("UTF-8"));
os.flush();
os.close();
BufferedReader br = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line;
while ((line = br.readLine()) != null) {
sb.append(line);
}
return sb.toString();
} catch (Exception e) {
return "{\"status\":\"error\",\"message\":\"" + e.getMessage() + "\"}";
}
}
}
Thử nghiệm và đánh giá hiệu năng (Testing & Validation)
Hệ thống được đưa vào thử nghiệm thực tế tại phòng Lab Bộ môn Điện tử Công nghiệp – Y Sinh trong 100 giờ hoạt động liên tục.
Response Time (ms)
150 ┼────────────────────────────────────────────────────────
120 ┼ ╭───╮ ╭───╮
90 ┼ ╭───╮ │ │ ╭───╮ │ │
60 ┼ ╭───╮ │ │ ╭───╯ ╰────╯ ╰───╮ │ │
30 ┼────╯ ╰───╯ ╰───╯ ╰───╯ ╰──────
0 ┴────┬───────┬───────┬───────┬────────┬───────┬───────┬──
10 req 20 req 30 req 40 req 50 req 60 req 70 req
(Concurrent Web/App Requests)
- Độ trễ đóng ngắt Relay:
- Qua nút nhấn cơ học trực tiếp: $28.4\text{ ms} \pm 2.1\text{ ms}$.
- Qua mạng Web LAN (trình duyệt Desktop): $86.2\text{ ms} \pm 5.4\text{ ms}$.
- Qua ứng dụng Android (Wi-Fi nội bộ): $94.5\text{ ms} \pm 6.8\text{ ms}$.
- Khả năng chịu tải đồng thời (Stress Test): Thực hiện bằng công cụ Apache Benchmark (
ab -n 1000 -c 50), webserver trên Intel Edison duy trì tỷ lệ phản hồi HTTP 200 OK đạt $99.8%$, không phát sinh lỗi tràn bộ nhớ (Memory Leak) nhờ bộ nhớ đệm 1GB RAM LPDDR3.
- Độ tin cậy phần cứng: Đóng ngắt liên tục 8 kênh tải 220V với tần suất 10 lần/phút trong 12 giờ liên tục. Nhiệt độ của chip Atom SoC duy trì ở mức $48.5^\circ\text{C}$ (ngưỡng tối đa cho phép $85^\circ\text{C}$), không cần tản nhiệt quạt cưỡng bức.
Đổi mới và đóng góp
Đổi mới kỹ thuật nổi bật
- Kiến trúc Máy chủ Web Độc lập trên Thiết bị Nhúng: Không phụ thuộc vào bất kỳ nền tảng đám mây trung gian của bên thứ ba (như Firebase, Blynk, hay ThingSpeak). Toàn bộ dữ liệu nhật ký, phân quyền và logic thực thi được xử lý On-Premise trên chính chiếc máy tính Intel Edison nhỏ bằng thẻ nhớ SD, triệt tiêu nguy cơ rò rỉ dữ liệu qua internet công cộng.
- Kỹ thuật Cách ly Quang Đa Tầng 2-Lớp: Phân tách hoàn toàn phần cứng điện thế thấp ($1.8\text{V}$ logic của vi xử lý) với nguồn điều khiển trung gian ($12\text{V DC}$) qua Opto PC817 và tải nguồn điện lưới xoay chiều ($220\text{V AC}$) qua Relay cơ học, loại bỏ hiện tượng xung gai nhiễu điện áp ngược gây treo vi điều khiển (MCU Hanging).
- Cơ chế Đồng bộ Hóa 3-Kênh Thời Gian Thực: Bất kỳ thao tác vật lý nào tại nút bấm cơ học lập tức cập nhật trạng thái phản hồi lên cơ sở dữ liệu MySQL và hiển thị đồng bộ sang giao diện Web/App sau chu kỳ polling tiếp theo.
So sánh định lượng với các giải pháp khác
| Chỉ số kỹ thuật / Hiệu năng |
Module Relay Arduino + W5100 |
Raspberry Pi 3 Server |
Giải pháp Intel Edison của Đề tài |
| Mức tiêu thụ năng lượng Idle |
$\sim 1.5\text{W}$ |
$\sim 2.8\text{W} - 4.0\text{W}$ |
$\sim 0.9\text{W} - 1.2\text{W}$ (Tiết kiệm $>60%$ so với Pi 3) |
| Tốc độ xung nhịp CPU |
16 MHz (1 nhân) |
1200 MHz (4 nhân) |
500 MHz (2 nhân Intel Atom 22nm) |
| Kích thước bo mạch điều khiển |
$105 \times 55\text{ mm}$ |
$85 \times 56\text{ mm}$ |
$35.5 \times 25\text{ mm}$ (Giảm diện tích $>70%$) |
| Thời gian khởi động OS (Boot time) |
Tức thì ($<1\text{s}$) |
$35 - 45\text{s}$ |
$18 - 22\text{s}$ (Nhanh hơn $50%$ so với Pi 3) |
| Hệ cơ sở dữ liệu tích hợp |
Không có |
MySQL / SQLite |
MySQL 5.7 Enterprise-grade đầy đủ |
Ứng dụng thực tế và triển khai
Kịch bản ứng dụng thực tế
- Hệ thống Nhà thông minh (Smart Home): Quản lý tập trung 8 lộ đèn chiếu sáng, quạt trần, bình nóng lạnh và van tưới tiêu tự động. Người dùng kiểm soát thiết bị tại chỗ qua công tắc gắn tường hoặc kiểm soát từ xa khi đang đi công tác thông qua giao diện Web.
- Tủ điều khiển chiếu sáng công nghiệp / Nhà xưởng: Tự động hóa giám sát thời gian bật tắt của các dàn đèn công suất lớn, cảnh báo thời gian hoạt động vượt định mức để bảo trì bóng đèn định kỳ thông qua bảng thống kê
total_runtime_seconds.
- Trạm quan trắc nông nghiệp công nghệ cao: Điều khiển kích hoạt van bơm nước, máy phun sương, quạt đối lưu trong nhà màng tự động.
Triển Khai Hệ Thống
│
┌─────────────────────────────────┴─────────────────────────────────┐
▼ ▼
┌─────────────────────────────────┐ ┌─────────────────────────────────┐
│ Smart Home Dân Dụng │ │ Nhà Xưởng Công Nghiệp │
├─────────────────────────────────┤ ├─────────────────────────────────┤
│ • 8 Kênh đèn & quạt trần │ │ • Dàn đèn chiếu sáng phân xưởng │
│ • Công tắc tường + App di động │ │ • Lập lịch & ghi nhật ký bảo trì│
│ • Vận hành mạng LAN an toàn │ │ • Cách ly quang chống nhiễu máy │
└─────────────────────────────────┘ └─────────────────────────────────┘
Phân tích chi phí và hiệu quả đầu tư (Cost-Benefit Analysis)
Ước tính ngân sách phần cứng (Quy mô 8 kênh tải):
├── 1x Kit Intel Edison + Mini Breakout Board : 1.200.000 VNĐ
├── 1x Module 8 Relay 12V + Opto PC817 : 160.000 VNĐ
├── 1x Nguồn Adapter 12V - 2A : 80.000 VNĐ
├── 8x Nút nhấn, linh kiện thụ động, vỏ hộp : 110.000 VNĐ
└── 1x Bo mạch PCB gia công 2 lớp : 150.000 VNĐ
─────────────────────────────────────────────────────────────
TỔNG CHI PHÍ PHẦN CỨNG : 1.700.000 VNĐ
- Hiệu quả kinh tế (ROI): So với việc trang bị các bộ điều khiển PLC mini (như Siemens LOGO! hay Mitsubishi FX-series có giá từ 4.500.000 – 7.000.000 VNĐ khi kèm module Ethernet), giải pháp dựa trên Intel Edison giúp tiết kiệm từ $60% - 75%$ chi phí đầu tư thiết bị ban đầu, đồng thời sở hữu giao diện Web và tính năng lưu trữ dữ liệu trực quan vượt trội.
Hướng dẫn triển khai (Deployment Guide)
- Thiết lập mạng Wi-Fi cho Intel Edison:
Truy cập Terminal thông qua cổng Micro-USB UART bằng phần mềm PuTTY (Baudrate
115200), chạy lệnh cấu hình mạng:
configure_edison --wifi
- Cài đặt Web Server Environment:
opkg update
opkg install apache2 php php-cli php-mod-mysql mysql5
/etc/init.d/apache2 start
/etc/init.d/mysqld start
- Triển khai Source Code & Schema: Sao chép thư mục Web vào
/var/www/html/ qua giao thức SFTP (bằng WinSCP), import file .sql vào hệ quản trị MySQL.
Hạn chế và hướng phát triển
Hạn chế kỹ thuật hiện tại
- Chuẩn truyền thông Client-Server: Giao diện Web hiện vẫn sử dụng kỹ thuật gửi Request tuần tự (HTTP AJAX Polling), chưa nâng cấp lên WebSocket chuẩn hai chiều (Full-duplex), dẫn đến độ trễ đồng bộ giao diện Web khi có tương tác nút nhấn vật lý còn dao động trong khoảng $0.5 - 1.0\text{ s}$.
- Vấn đề thương mại của Kit: Dòng phần cứng Intel Edison đã bị hãng Intel ngừng sản xuất thương mại (End-of-Life), gây khó khăn cho việc mở rộng sản xuất quy mô công nghiệp hàng loạt nếu không có phương án chuyển dịch thiết kế (migration).
- Bảo mật đường truyền: Chưa kích hoạt chứng chỉ SSL/TLS (HTTPS) trên Web Server cục bộ, các gói tin dữ liệu điều khiển gửi dạng plaintext trong mạng nội bộ.
Hướng nâng cấp và phát triển mở rộng
- Chuyển dịch phần cứng (Hardware Migration): Porting toàn bộ mã nguồn Linux Driver và Web Server sang các nền tảng SoC đương đại tương thích cao như Raspberry Pi Compute Module 4 (CM4) hoặc Rock Pi 4, giữ nguyên kiến trúc phần cứng cách ly công suất.
- Tích hợp giao thức IoT công nghiệp: Nâng cấp tầng giao vận sang chuẩn MQTT (Message Queuing Telemetry Transport) kết hợp Broker Mosquitto nội tại để giảm tải băng thông mạng xuống dưới $5\text{ KB/s}$.
- Bổ sung tính năng đo lường điện năng: Tích hợp chip đo đếm chuyên dụng (như ADE7758 hoặc module PZEM-004T) qua chuẩn giao tiếp UART/I2C để đo lường chính xác công suất (W), điện áp (V), dòng điện (A) và lượng điện tiêu thụ (kWh) của từng nhánh tải.
Đối tượng hưởng lợi
- Sinh viên chuyên ngành Điện tử - Viễn thông, Tự động hóa và IoT: Tài liệu cung cấp góc nhìn thực chiến về quy trình thiết kế phần cứng hoàn chỉnh từ tính toán transistor, cách ly quang, thiết kế mạch in PCB 2 lớp đến kỹ thuật lập trình hệ điều hành Linux nhúng.
- Kỹ sư và Lập trình viên Hệ thống nhúng (Embedded Developers): Nắm vững kỹ thuật nhúng máy chủ HTTP LAMP Stack lên kiến trúc vi xử lý x86 tiết kiệm năng lượng, cách thao tác trực tiếp với các thanh ghi GPIO qua hệ thống tập tin ảo Linux
/sys/class/gpio.
- Doanh nghiệp vừa và nhỏ (SMEs) / Hộ kinh doanh cá thể: Có ngay mô hình mẫu chi phí thấp để tự động hóa hệ thống chiếu sáng, biển bảng quảng cáo, giám sát năng lượng thiết bị mà không cần phụ thuộc vào hạ tầng Server Cloud tốn phí duy trì hàng tháng.
- Nhà nghiên cứu học thuật: Cung cấp số liệu đo đạc thực nghiệm về độ tin cậy, thời gian đáp ứng và nhiệt độ làm việc của kiến trúc vi xử lý Intel SoC Atom trong môi trường công nghiệp.
Câu hỏi thường gặp
1. Cần chuẩn bị những môi trường phần mềm nào để biên dịch và nạp chương trình cho hệ thống?
Bạn cần cài đặt các công cụ: PuTTY (để giao tiếp Console qua UART/SSH), WinSCP (để truyền file mã nguồn PHP/HTML lên bộ nhớ Yocto Linux), Android Studio (phiên bản 3.0 trở lên với Android SDK API 16–28 để biên dịch ứng dụng di động), và trình soạn thảo mã nguồn Sublime Text / VS Code.
2. Nếu mạng Wi-Fi bị mất kết nối đột ngột, hệ thống có còn điều khiển được thiết bị không?
Có. Hệ thống vẫn vận hành an toàn và độc lập tuyệt đối thông qua cụm 8 nút nhấn cơ học trực tiếp gắn tại phần cứng. Khi có kết nối mạng trở lại, trạng thái hiện tại của thiết bị sẽ tự động đồng bộ hóa lên cơ sở dữ liệu MySQL mà không làm gián đoạn tải điện.
3. Tại sao hệ thống phải dùng transistor A1015 và Opto PC817 thay vì nối trực tiếp GPIO vào Relay?
Chân GPIO của Intel Edison chỉ xuất mức điện áp $1.8\text{V}$ với dòng tải tối đa $10\text{ mA} - 100\text{ mA}$, trong khi cuộn hút Relay yêu cầu nguồn kích $12\text{V}$ với dòng kích $30\text{mA} - 70\text{mA}$. Nếu nối trực tiếp sẽ gây cháy chip ngay lập tức. Opto PC817 giúp cách ly hoàn toàn quang học, còn transistor PNP A1015 đóng vai trò khóa điện tử công suất đóng nguồn $12\text{V}$ cho cuộn dây Relay.
4. Hệ thống có khả năng mở rộng điều khiển lên 16 hoặc 32 thiết bị không?
Hoàn toàn khả thi. Header 14x2 trên Mini Breakout Board cung cấp hơn 40 chân I/O. Ngoài ra, có thể tích hợp thêm các IC mở rộng I/O qua giao tiếp I2C hoặc SPI (như chip MCP23017 cung cấp thêm 16 chân I/O chỉ với 2 dây tín hiệu) để điều khiển hàng chục tải độc lập.
5. Chi phí bảo trì định kỳ và tuổi thọ tiếp điểm của module Relay là bao nhiêu?
Relay cơ học Songle 12VDC có tuổi thọ đóng ngắt danh định cơ khí là $10.000.000$ lần và tuổi thọ điện môi tại tải định mức 10A là $100.000$ lần. Đối với hệ thống chiếu sáng dân dụng thông thường (tần suất bật tắt 10–20 lần/ngày), relay có thể hoạt động bền bỉ từ 5 đến 8 năm trước khi cần thay thế tiếp điểm với chi phí linh kiện cực rẻ ($<15.000\text{ VNĐ/relay}$).
Kết luận
Đồ án tốt nghiệp "Thiết kế hệ thống điều khiển và giám sát thiết bị qua Webserver sử dụng Kit Intel Edison" của nhóm tác giả Lâm Thanh Sang và Đỗ Tiến Anh (hướng dẫn bởi ThS. Nguyễn Thanh Nghĩa) đã giải quyết trọn vẹn bài toán tích hợp giữa phần cứng công suất và hệ thống quản lý dữ liệu thông minh. Dự án không chỉ dừng lại ở mô hình mô phỏng mà đã thi công hoàn chỉnh phần cứng bo mạch 2 lớp, đóng gói sản phẩm hoạt động ổn định với tải thực AC 220V, cung cấp giao thức điều khiển đa nền tảng (Nút bấm, Web Browser, App Android) với độ trễ thấp $<100\text{ ms}$.
Thành công của đề tài khẳng định tính khả thi vượt trội của xu hướng đưa toàn bộ hạ tầng Web Server và Database quản lý xuống tầng biên (Edge Computing) trong các ứng dụng IoT gia dụng và công nghiệp, mở ra hướng đi bền vững cho các giải pháp nhà thông minh bảo mật cao và vận hành độc lập.