Xem mẫu

  1. Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021) Thiết Kế Hệ Thống Giám Sát Và Điều Khiển Trạm Thu Phát Sóng Di Động (BTS) Theo Mô Hình IoT Hồ Như Tuấn1, Nguyễn Tiến Đạt2, Phan Vũ Huỳnh Tuấn2, Thái Hồng Hải2, Lê Đức Hùng2* (1) Viễn thông Tiền Giang (VNPT Tiền Giang) (2) Khoa Điện tử - Viễn Thông, Trường Đại học Khoa học Tự nhiên – ĐHQG TP.HCM (*) Email: ldhung@hcmus.edu.vn Abstract—Bài báo trình bày kết quả xây dựng và thực hiện công việc tính toán các thông số từ cảm biến dòng điện, thi hệ thống giám sát – điều khiển hệ thống máy lạnh tại điện thế, nhiệt độ và phát hiện trạng thái hoạt động của máy trạm BTS theo thời gian thực. Hệ thống được xây dựng theo phát điện. Mô-đun thu phát Wifi ESP32 sẽ thực hiện công việc mô hình IoT, mỗi node trong hệ thống được thiết kế sử dụng giao tiếp với máy chủ quản lý của hệ thống, truyền các dữ liệu STM32 để tính toán và đo thông số về dòng điện (sai số ± được tính toán từ vi điều khiển STM32 đến máy chủ, và nhận 0.002A), điện thế (sai số ±15V khi có điện 220V chạy qua các lệnh điều khiển từ máy chủ đến Node. cảm biến, sai số +0.15V khi không có điện chạy qua cảm biến) và trạng thái hoạt động của máy lạnh, nhiệt độ môi trường (sai số ±0.0625oC) tại trạm BTS. Dựa vào các thông số đó, thiết bị có thể giám sát tình trạng hoạt động của máy lạnh thông qua các điều kiện về thông số đo được. Bên cạnh đó, thiết bị sử dụng bộ mã hóa AES-128 được triển khai trên mô-đun thu phát Wifi ESP32 để mã hóa các dữ liệu được lưu trữ tại Flash Memory của vi điều khiển bao gồm thông tin mạng Wifi, trạng thái kết nối của thiết bị. Ngoài ra, thiết bị sẽ được kết hợp với các Blynk API (mã nguồn mở) để giao tiếp truyền/nhận dữ liệu về dòng điện, điện thế, trạng thái hoạt động, nhiệt độ, điều khiển thiết bị, cảnh báo đến máy chủ. Các thông số này sẽ được người giám sát trạm BTS theo dõi thông qua ứng dụng trên điện thoại di động. Hình 1. Mô hình hệ thống giám sát trạm BTS dựa trên IoT. Keywords- TEE, Base Transceiver Station (BTS), Advanced Encryption Standard – 128 (AES-128), Blynk IoT Sau khi máy chủ quản lý tập trung nhận các dữ liệu về hệ Platform, Internet of Things. thống làm mát, dựa vào DeviceID của từng Node, máy chủ sẽ I. GIỚI THIỆU cung cấp Restful API tương ứng với từng Node, khi đó giám Trong những năm gần đây, các mô hình Internet of Things sát viên có thể truy cập vào dữ liệu của thiết bị mong muốn. đang trở nên phổ biến trong nhiều lĩnh vực khác nhau tại Việt Hệ thống cung cấp một giao diện trên ứng dụng Blynk hiển Nam. Hệ thống được xây dựng nhằm mục đích giải quyết các thị các thông số quan trọng, chức năng điều khiển, thông tin vấn đề về việc giám sát và vận hành còn tồn đọng trong thời mạng WIFI đang kết nối. Giám sát viên có thể truy cập vào để gian dài cho hệ thống làm mát tại các trạm BTS. Bởi vì, quy giám sát từng máy lạnh tại mỗi trạm BTS. Sơ đồ hệ thống được trình giám sát và vận hành hệ thống máy lạnh đang được thực đề xuất được trình bày trong Hình 2. hiện thủ công bởi các nhân viên giám sát hoặc bộ định thời bằng cơ, ngoài ra khoảng cách vị trí của các trạm BTS là khá xa nhau, để có thể di chuyển giữa các trạm sẽ tốn rất nhiều thời gian và công sức. Tuy nhiên, để nhiệt độ phòng máy đạt chuẩn, đôi khi các nhân viên giám sát đã để cho 02 máy lạnh hoạt động cùng lúc gây ra sự lãng phí rất lớn về chi phí tiền điện. Do đó, xây dựng hệ thống ứng dụng IoT để giám sát và vận hành hệ thống máy lạnh sẽ giải quyết được các vấn đề về lãng phí tài nguyên nêu trên, góp phần tăng tuổi thọ thiết bị và đảm bảo chất lượng dịch vụ viễn thông. Ngoài ra, việc ứng dụng mô hình IoT sẽ giúp việc quản lý và giám sát trở nên hiệu quả hơn và sẵn sàng Hình 2. Mô hình hoạt động của hệ thống đề xuất. ứng phó ngay lập tức khi phát hiện sự cố xảy ra với hệ thống làm mát. Mô hình hệ thống giám sát trạm BTS trên mô hình IoT II. QUÁ TRÌNH XỬ LÝ TẠI VI ĐIỀU KHIỂN STM32 được trình bày trong Hình 1. II. 1. Đo nhiệt độ môi trường Hệ thống được triển khai trên một máy chủ quản lý tập trung Node dùng cảm biến DS18B20 dạng chân cắm để đo nhiệt và các node IoT, các node được thiết kế riêng biệt để ứng dụng độ môi trường nhằm giảm độ lớn sai số so với cảm biến LM35 cho mô hình này. Node dùng hai vi điều khiển là (sai số ở LM35 là ±0.25, sai số ở DS18B20 là ±0.0625). Ngoài STM32F103C8T6 và ESP32. Vi điều khiển STM32 sẽ thực ra, cảm biến DS18B20 cho dữ liệu nhiệt độ đầu ra là dữ liệu số ISBN 978-604-80-5958-3 392
  2. Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021) (giao tiếp với vi điều khiển thông qua chuẩn One-wire) và độ giá trị Rtổng) với mục đích là chia điện thế xuống điện thế nhỏ nhạy cao, điều này phù hợp với môi trường có ẩm ướt hoặc có hơn. Hai ngõ vào vi sai được mắc qua một điện trở Rs (R45) = không khí lạnh. 220 . Với dòng qua Rs được tính như sau: 220√2 = ổ Sau đó, ta tính ra điện áp vi sai ngõ vào là Ur = Is × Rs phần điện áp vi sai này cũng được khuếch đại như phần trước và đọc ADC. Khi có giá trị ADC, ta có thể suy ngược về giá trị điện thế qua tải (được cấp ở ngõ vào là header J4 ban đầu). III. QUÁ TRÌNH XỬ LÝ TẠI MÔ-ĐUN ESP32 Hình 3. Thiết kế cảm biến trên Node. III. 1. Truyền/nhận dữ liệu - Nguồn cấp: 3.3V Các dữ liệu cơ bản về hệ thống làm mát được tính toán tại - Độ phân giải: 12 bits STM32 và lưu trữ trong một mảng dữ liệu bao gồm 21 bytes. - Thời gian chuyển đổi nhiệt độ tối đa: 750ms. Chuẩn giao tiếp được dùng giữa hai vi điều khiển là SPI, trong - Sai số: ±0.0625℃ đó ESP32 đóng vai trò là Master, STM32 là Slave. Mỗi 2 giây, II. 2. Đo độ lớn dòng điện Master sẽ gửi mã yêu cầu nhận dữ liệu từ slave (0x04), sau khi nhận được mã yêu cầu slave sẽ gửi 21 bytes dữ liệu (mảng gpSpiTxBuffer[]) lập tức cho Master. Quá trình truyền nhận dữ liệu giữa STM32 và ESP32 được trình bày trong Hình 6. Hình 6. Quá trình truyền/nhận dữ liệu qua SPI Hình 4. Mạch đo dòng điện. Định dạng của 21 Bytes dữ liệu: Mạch đo dòng điện được thiết kế theo cấu trúc là một mạch - gpSpiTxBuffer[0..7]: Dữ liệu điện thế của máy lạnh 1 khuếch đại vi sai thông thường (Hình 4). Với ngõ vào là dòng và 2. điện (được mắc qua cảm biến dòng với tỷ lệ vòng là 1:1000), - gpSpiTxBuffer[8..15]: Dữ liệu điện áp của máy lạnh 1 thông qua điện trở shunt Rs đi kèm với cảm biến dòng để biến và 2. đổi thành điện thế và cấp vào header J5, thông qua mạch khuếch - gpSpiTxBuffer[16..19]: Dữ liệu nhiệt độ tại trạm BTS. đại vi sai sử dụng Op-Amp MCP601T và dùng STM32 giao - gpSpiTxBuffer[20]: Trạng thái hoạt động của máy phát tiếp thông qua ADC để đọc giá trị điện áp và tính toán ngược điện. lại để suy ra dòng điện. Giả sử dòng điện qua tải trên hệ thống Các dữ liệu sẽ được chuẩn hóa và gửi đến Blynk Server là 100A, sau khi qua cảm biến dòng thì trở thành 0.1A (100mA). thông qua Blynk API. Quá trình gửi được chia theo các tác vụ Giữa hai chân cảm biến dòng có mắc một điện trở Rs = 10 , từ khác nhau và lặp lại theo chu kì thời gian như Hình 7. đó điện thế ta thu được để cấp vào mạch khuếch đại vi sai là 0.1 × 10 = 1 . Điện áp vi sai này được khuếch đại tùy thuộc vào tỷ số R32/R42 = 10 trên hình. Khi đó, điện áp ở ngõ ra là Vcur = 10V và được đọc vào bởi STM32 sử dụng bộ ADC. Từ đó ta có thể rút ra công thức tổng quát để tính dòng điện qua tải: × 1000 = × × II. 3. Đo độ lớn điện thế Hình 7. Phân chia các tác vụ theo thời gian. Theo hình bên trên, các tác vụ sẽ được thực hiện theo chu kỳ như sau: - Nhận lệnh điều khiển từ Blynk Server: 1 giây: - Nhận dữ liệu từ STM32: 2 giây Hình 5. Mạch đo điện thế. - Gửi dữ liệu đó đến Blynk Server: 2 giây. Tương tự, ta có mạch đo điện thế như Hình 5 với nguyên lý - Kiểm tra tín hiệu và kết nối với máy chủ: 3 giây. vẫn là mạch khuếch đại vi sai đơn. Trong trường hợp này, ngõ - Kiểm tra cảnh báo người dùng có dữ liệu bất thường: 3 vào được đưa qua mạng lưới gồm nhiều điện trở 22 (mang giây. ISBN 978-604-80-5958-3 393
  3. Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021) Quá trình kiểm tra dữ liệu theo các điều kiện phát hiện sự Để tăng tính bảo mật cho các thông tin WiFi, trước khi được cố ở Bảng 1 như sau: lưu vào Flash Memory thì các thông tin này sẽ được mã hóa thông qua kỹ thuật mã hóa khóa đối xứng AES-128. Bảng 1. Bảng điều kiện phát hiện sự cố. Ngưỡng Thời Quyết định cảnh báo gian đếm Cảnh báo 25℃ giám sát 30 giây cho người Hình 9. Quá trình mã hóa/giải mã thông tin WiFi. lạnh) giám sát 30 giây cho người bật máy Blynk để truyền/nhận dữ liệu giữa Client (các Node) và Server. giám sát lạnh) Quá trình nhận lệnh từ Blynk Server đến Client diễn ra như Hình 10 bên dưới: Để có thể dễ dàng sử dụng và tăng tính linh hoạt cho chương trình, nhóm tác giả đã lập trình cho các tác vụ này như một tính năng có thể đăng ký. Khi người quản trị hệ thống yêu cầu thêm một chức năng, và chức năng này trên mô-đun Wifi ESP32 cần thực hiện thêm một tác vụ nữa để đáp ứng chức năng mong muốn. Nhóm chỉ cần lập trình hàm thực hiện chức năng, sau đó đăng ký hàm đó vào “Lịch trình” hoạt động của chương trình. Để đăng ký cần hai thông tin bắt buộc, đó là: địa chỉ hàm thực hiện chức năng được yêu vầu và chu kỳ thời gian thực hiện. Các bước sử dụng bộ “Lịch trình” được trình bày theo lưu đồ Hình 8 sau. Hình 10. Quá trình nhận lệnh điều khiển từ Blynk Server. Tại Client sau khi tạo kết nối với Blynk Server thông qua mã “Authentication Token” được xác thực riêng, địa chỉ IP của máy chủ đang thực thi Blynk Server và Blynk port (cổng 8080) thành công, Client và Server sẽ tiến hành đồng bộ dữ liệu đối chiếu thông qua các Virtual Pin được cấu hình thông qua ứng dụng Blynk. Bảng danh sách các Virtual Pin được trình bày như Bảng 2 như sau. Bảng 2. Bảng danh sách Virtual Pin Virtual Tên Chức Năng Pin Điều khiển V1, RELAY_VIRTUAL_PIN bật/tắt máy lạnh V4 Hình 8. Quá trình đăng ký hàm chức năng vào bộ “Lịch trình”. Cập nhật thông V2, VOL_VIRTUAL_PIN số điện thế V5 Trong đó: Cập nhật thông V3, CUR_VIRTUAL_PIN - *functionTask: Là địa chỉ hàm thực hiện chức năng số điện áp V6 muốn thêm vào “Lịch trình” Cập nhật thông - Timeout: là thời gian chu kỳ của tác vụ đó (chu kỳ nhỏ TEMP_VIRTUAL_PIN số nhiệt độ môi V7 nhất là 0.1 giây) trường Các tác vụ được đăng ký nếu có chu kỳ trùng nhau thì sẽ Cập nhật trạng được thực hiện lần lượt dựa vào thứ tự đăng ký của tác vụ đó. DYNAMO_VIRTUAL_PIN thái hoạt động V11 máy phát điện III. 2. Mã hóa thông tin WIFI Cảnh báo có sự RELAY_WARNING_ V13, Theo sơ đồ Hình 9, tại Flash Memory của mô-đun thu phát cố xảy ra ở máy VIRTUAL_PIN V14 Wifi ESP32, thông tin về WiFi là tên WiFi (SSID) và mật khẩu lạnh (Password) sẽ được mã hóa và lưu theo từng vùng nhớ được thiết kế tại bộ nhớ. Trong bộ nhớ sẽ lưu trữ ba thông tin WiFi Tại Node, thông tin nhận là các lệnh điều khiển máy lạnh mà vi điều khiển có thể truy cập. Mỗi thông tin WiFi sẽ được và trạng thái kết nối giữa các Node và mạng WiFi trong hệ cấp 128 ô nhớ để lưu trữ (mỗi ô nhớ là 1 byte), bộ nhớ được thống. chia thành ba vùng địa chỉ bao gồm 0x0001 – 0x0080, 0x0081 Bên cạnh đó, Client sẽ truyền dữ liệu đến Server theo quá – 0x0100, 0x0101 – 0x0180. trình ở Hình 11 bên dưới. ISBN 978-604-80-5958-3 394
  4. Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021) Dựa trên các thông số từ việc kiểm tra, nhóm thực hiện đã thêm các điều kiện hoạt động gây sự cố để kiểm tra các tính năng cảnh báo sự cố đến người giám sát thông qua ứng dụng Blynk. Các sự cố sẽ được cảnh báo thông qua ứng dụng Blynk được thể hiện trong Hình 13(b). Hình 11. Quá trình truyền dữ liệu. Các thông số về điện áp, điện thế, nhiệt độ, cảnh báo, trạng thái hoạt động của máy phát điện là các đối tượng mà Node sẽ truyền đến Server để lưu trữ tại cơ sở dữ liệu. Quá trình truyền này sẽ được thực hiện theo từng tác vụ đã được phân chia ở Mục III.1. Khi kết thúc một quá trình truyền, Node sẽ nhận được một phản hồi từ Server để xác nhận đã nhận được đầy đủ các thông số dữ liệu. IV. KẾT QUẢ Hệ thống sẽ ghi nhận các giá trị thông số về hệ thống làm mát bao gồm hai máy lạnh tại trạm BTS, các thông số được ghi nhận lại là điện áp, điện thế, nhiệt độ môi trường tại trạm BTS, (a) (b) trạng thái hoạt động của máy nổ. Trong quá trình thực hiện, Hình 13. Kết quả hoạt động của hệ thống (a) và cảnh báo sự cố nhóm thực hiện có tiến hành kiểm tra các chức năng qua việc với máy lạnh cho người giám sát (b) trên ứng dụng Blynk. điều khiển với các thiết bị bao gồm đèn huỳnh quang, quạt gió, sạc laptop. Quá trình kiểm tra được thực hiện tại phòng thí Khi có sự cố xảy ra, ứng dụng Blynk sẽ cảnh báo với từng nghiệm. trường hợp ở Bảng 4 như sau: Bảng 3. Kết quả đo được từ các thiết bị Thiết bị Đèn Quạt gió Trạm Nhiệt Bảng 4. Các trường hợp và nội dung cảnh báo huỳnh hàn độ tại Trường hợp Vị trí Cảnh báo quang phòng Máy lạnh hoạt RELAY Sáng đèn màu đỏ Nhiệt độ 27.5 - động không đúng WARNING - “ON” 28℃ công suất Điện thế 218–235V 219–235V 218 – Phát hiện điện thế VOLTAGE DEV VOLTAGE 235V bất thường WARNING Kết quả hệ thống IoT bao gồm bo mạch phần cứng được Nhiệt độ môi TEMPERATURE Overheat trình bày trong Hình 12 và giá trị đo nhiệt độ, điện áp và điện trường vượt Warning thế trên ứng dụng Blynk được thể hiện trong Hình 13(a). ngưỡng cho phép Trạm mất điện DYNAMO ACTIVE STATUS Kết nối thất bại UPDATE WIFI CONNECTING hoặc gặp sự cố Ngoài ra, kỹ thuật mã hóa khóa đối xứng AES-128 phù hợp với việc triển khai trên mô-đun Wifi ESP32, quá trình mã hóa và giải mã diễn ra trong thời gian rất ngắn không ảnh hưởng đến tốc độ thực thi các tác vụ và chương trình chính. Các thông tin mã hóa và kết quả được hiển thị ở Bảng 5. Các thông tin bên dưới được mã hóa bởi khóa: key[16] = {0x44, 0x45, 0x53, 0x4c, 0x41, 0x42, 0x4b, 0x48, 0x54, 0x4e, 0x2d, 0x56, 0x4e, 0x50, 0x54, 0x31} Bảng 5. Bảng kết quả thông tin mã hóa dùng AES-128 Plaintext (text) Key (Hex) Cipher text (Hex) VNPT-TG.AP.P.TCLD 44 45 53 4c 4b 50 9f c9 41 42 4b 48 a4 00 f9 0b 54 4E 2d 56 ec b3 39 d3 4e 50 54 31 a1 69 1f d4 Hình 12. Bo mạch hệ thống IoT cho trạm BTS. ISBN 978-604-80-5958-3 395
  5. Hội nghị Quốc gia lần thứ 24 về Điện tử, Truyền thông và Công nghệ Thông tin (REV-ECIT2021) KHCN1AAAAAAAAAAA 44 45 53 4c 56 f4 4b 08 41 42 4b 48 5c fb e0 2f 54 4E 2d 56 91 91 67 5c 4e 50 54 31 4a 14 ba f1 Hoomi smart home 44 45 53 4c bf 44 71 bf 41 42 4b 48 67 40 e2 2f 54 4E 2d 56 0f 7d 24 6b 4e 50 54 31 28 86 22 33 1234567890000000 44 45 53 4c 83 4c 11 58 41 42 4b 48 58 45 67 7b 54 4E 2d 56 46 c9 14 81 4e 50 54 31 e1 77 32 02 deslab2610000000 44 45 53 4c 98 1a 04 e9 41 42 4b 48 74 90 c2 6d 54 4E 2d 56 19 19 ab 28 4e 50 54 31 ed 34 1e 17 nhathongminh0000 44 45 53 4c 5e bc 8b 68 41 42 4b 48 d1 3c 44 86 54 4E 2d 56 af 28 27 ea 4e 50 54 31 9a f0 da d2 V. KẾT LUẬN Nghiên cứu đã hoàn thành việc xây dựng Node và các chức năng cơ bản của Server để vận hành một hệ thống IoT, cơ sở dữ liệu và giao diện người dùng trên ứng dụng Blynk, sau đó đã tiến hành chạy demo hệ thống tại các môi trường khác nhau, thiết bị điều khiển khác nhau. Tuy nhiên, hệ thống chưa đạt được tính bảo mật thông tin cao trong quá trình truyền nhận dữ liệu, các thiết kế mạch đo thông số vẫn còn sai số tương đối trong quá trình chạy thực tế. Mục tiêu tiếp theo của nghiên cứu là hoàn thiện các thiết kế về mạch đo, ứng dụng kỹ thuật OTA (Over-the-Air) cho mô-đun thu phát Wifi ESP32 để có thể cập nhật chương trình từ xa đúng với tinh thần của các Node trong hệ thống IoT. Ngoài ra, nhóm sẽ tiếp tục phát triển cơ sở dữ liệu, máy chủ và giao diện trên trình duyệt Web cho người giám sát có thể theo dõi nhiều Node cùng một cửa sổ trình duyệt nhằm tăng tính chất quản lý tập trung của hệ thống. TÀI LIỆU THAM KHẢO [1] “Annoucing the ADVANCED ENCRYPTION STANDARD (AES)”, page 1-38, Nov 26, 2021. [2] Nabilah Binti Mazalan, Jabatan Kejuruteraan Elektrik, Politeknik Merlimau, “Application of Wireless Internet in Networking using NODEMCU and Blynk App”, page 1-7, 2019. [3] A. Jothivelu and S. P. Simon, "A Smart BTS/Node B Network Monitoring and Control using IoT," 2019 Fifteenth International Conference on Information Processing (ICINPRO), pp. 1-5, 2019. [4] P. A. M. Hambali, Syamsuddin, M. R. Effendi and E. A. Z. Hamidi, "Prototype Design of Monitoring System Base Tranceiver Station (BTS) Base on Internet of Things," 2020 6th International Conference on Wireless and Telematics (ICWT), pp. 1-6, 2020. ISBN 978-604-80-5958-3 396
nguon tai.lieu . vn