SKKN Stem iot - Gửi nhận thông tin từ 2 mạch qua Server Adafruit Io nhằm tạo hứng thú cho học sinh trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật

pdf 22 trang Hoành Bính 03/09/2025 620
Bạn đang xem 20 trang mẫu của tài liệu "SKKN Stem iot - Gửi nhận thông tin từ 2 mạch qua Server Adafruit Io nhằm tạo hứng thú cho học sinh trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pdfskkn_stem_iot_gui_nhan_thong_tin_tu_2_mach_qua_server_adafru.pdf

Nội dung text: SKKN Stem iot - Gửi nhận thông tin từ 2 mạch qua Server Adafruit Io nhằm tạo hứng thú cho học sinh trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật

  1. SỞ GIÁO DỤC ĐÀO TẠO TỈNH GIA LAI TRƯỜNG THPT LƯƠNG THẾ VINH _________________________________ SÁNG KIẾN STEM IOT - GỬI NHẬN THÔNG TIN TỪ 2 MẠCH QUA SERVER ADAFRUIT IO NHẰM TẠO HỨNG THÚ CHO HỌC SINH TRƯỜNG THPT LƯƠNG THẾ VINH THAM GIA NGHIÊN CỨU KHOA HỌC KỸ THUẬT Họ tên người thực hiện : HUỲNH THUÝ OANH Chức vụ : Giáo viên Đơn vị công tác : Trường THPT Lương Thế Vinh Tổ : Toán Tin Năm học 2023-2024
  2. SỞ GIÁO DỤC ĐÀO TẠO TỈNH GIA LAI TRƯỜNG THPT LƯƠNG THẾ VINH _________________________________ SÁNG KIẾN STEM IOT - GỬI NHẬN THÔNG TIN TỪ 2 MẠCH QUA SERVER ADAFRUIT IO NHẰM TẠO HỨNG THÚ CHO HỌC SINH TRƯỜNG THPT LƯƠNG THẾ VINH THAM GIA NGHIÊN CỨU KHOA HỌC KỸ THUẬT Họ tên người thực hiện : HUỲNH THUÝ OANH Chức vụ : Giáo viên Đơn vị công tác : Trường THPT Lương Thế Vinh Tổ : Toán- Tin Năm học 2023- 2024
  3. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật MỤC LỤC A. PHẦN MỞ ĐẦU ....................................................................................... 1 I. LÍ DO CHỌN SÁNG KIẾN: .............................................................. 1 II. MỤC ĐÍCH, ĐỐI TƯỢNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU:......................................................................................................... 1 1. Mục đích: ............................................................................................. 1 2. Đối tượng và phạm vi nghiên cứu: .................................................... 2 3. Phương pháp nghiên cứu: .................................................................. 2 B. PHẦN NỘI DUNG ................................................................................... 3 I. CƠ SỞ LÝ LUẬN:............................................................................... 3 II. CƠ SỞ THỰC TIỄN: ........................................................................ 3 III. GIẢI QUYẾT VẤN ĐỀ: .................................................................. 5 1. Đăng kí và cài đặt Server: .................................................................. 5 2. Gửi thông tin đi từ mạch 1 : ............................................................... 7 3. Nhận thông tin trên mạch 2 : .......................................................... 10 IV. KẾT QUẢ ĐẠT ĐƯỢC: ................................................................ 16 C. PHẦN KẾT LUẬN VÀ KIẾN NGHỊ ................................................... 17 I. KẾT LUẬN: ....................................................................................... 17 II. KIẾN NGHỊ: .................................................................................... 18 D. THAM KHẢO ........................................................................................ 19 Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 0
  4. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật A. PHẦN MỞ ĐẦU I. LÍ DO CHỌN SÁNG KIẾN: Trong những năm gần đây sự phổ biến của điện thoại thông minh và máy tính kết nối internet làm cho xã hội thay đổi và phát triển mạnh mẽ, trong đó có lĩnh vực giáo dục. Hàng ngày học sinh được tiếp cận với internet và các lài liệu liên quan đến máy tính điện tử, nhiều học sinh yêu thích công nghệ và bị thu hút bởi lĩnh vực IOT vì sự phổ biến và hữu ích mà nó mang lại trong cuộc sống thực tế. Bên cạnh đó các đề tài khoa học kĩ thuật có liên quan IOT xuất hiện ngày càng nhiều, vì thế việc các giáo viên tin học như chúng tôi truyền tải thêm một số kiến thức về IOT cho học sinh phổ thông cũng trở nên cần thiết. Đối với bộ môn tin học, kiến thức lập trình là nội dung bắt buộc cần hoàn thành, để kích thích được sự sáng tạo, hình thành đam mê cho học sinh thì rất cần những mô phỏng thực tế và sinh động cho bài học lý thuyết, vì vậy tôi tìm hiểu nội dung “ Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật” cũng là để hỗ trợ cho những bài giảng liên quan trong chương trình giảng dạy Tin học phổ thông của mình, đồng thời giúp tạo ra một tài liệu tham khảo cho các em học sinh muốn tham gia thực hiện đề tài khoa học kĩ thuật lĩnh vực liên quan IOT cũng như các thầy cô có nhu cầu nghiên cứu tìm hiểu để hướng dẫn cho học sinh của mình thực hiện đề tài khoa học kĩ thuật. II. MỤC ĐÍCH, ĐỐI TƯỢNG VÀ PHƯƠNG PHÁP NGHIÊN CỨU: 1. Mục đích: Sáng kiến này thực hiện việc xây dựng mô hình cụ thể cách thu thập dữ liệu, lưu trữ và truyền thông tin trên internet thông qua dịch vụ máy chủ Adafruit IO, với các mục đích cụ thể như sau : - Tìm hiểu chi tiết cách thu thập thông tin để gửi dữ liệu thu thập được lên Server, và gửi dữ liệu từ server về mạch nhận, cụ thể là server Adafruit IO nhằm hỗ trợ kiến thức cho học sinh thực hiện đề tài khoa học kĩ thuật. Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 1
  5. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật - Giúp giáo viên có thể tạo ra nhiều mô hình minh họa thực tế hữu ích để học sinh tiếp cận kiến thức về vấn đề thu thập, lưu trữ và truyền thông tin trên Internet trong bộ môn tin học. - Góp phần lồng ghép liên môn trong dạy học, giúp học sinh quen thuộc với việc sử dụng tin học trong việc lưu trữ, truyền và xử lý thông tin. - Làm tài liệu giúp giáo viên hướng dẫn học sinh hỗ trợ thi khoa học kĩ thuật với các lĩnh vực phù hợp, nâng cao chất lượng giáo dục Stem trong nhà trường. 2. Đối tượng và phạm vi nghiên cứu: Với nhiệm vụ cụ thể là thực hiện nghiên cứu Stem IOT về chủ đề truyền tín hiệu giữa các thiết bị vi điều khiển, tìm ra hướng vận dụng trong nhà trường như thế nào cho hợp lý, sáng kiến này hướng đến các đối tượng: - Học sinh lựa chọn học chương trình mới với các tổ hợp có môn Vật lý, Tin học, công nghệ. - Học sinh bắt đầu tiếp cận việc nghiên cứu để thực hiện các đề tài khoa học kỹ thuật. - Giáo viên hướng dẫn học sinh thực hiện đề tài khoa học kỹ thuật. 3. Phương pháp nghiên cứu: Nghiên cứu các tài liệu về cơ sở lý luận, cơ sở thực tiễn của các đề tài liên quan đến kết nối từ xa giữa 2 mạch vi điều khiển. - Tìm hiểu, nghiên cứu các ứng dụng thực tế có kết nối giữa 2 thiết bị thông qua Server. - Chọn bài toán: Xây dựng chức năng gửi nhận dữ liệu để báo tín hiệu từ nơi có tín hiệu hồng ngoại báo cháy đến nơi có người theo dõi thông qua Server Adafruit IO. - Phạm vi nghiên cứu là áp dụng cho phần nội dung liên quan kiến thức về IOT, thực hiện đề tài khoa học kĩ thuật lĩnh vực máy tính, Stem trong nhà trường. Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 2
  6. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật B. PHẦN NỘI DUNG I. CƠ SỞ LÝ LUẬN: Server Adafruit IO là một trang web dịch vụ internet đơn giản dễ sử dụng, dễ dàng cho phép các thiết bị IOT nhận và gửi dữ liệu. Ngoài ra, nó có thể được sử dụng để tạo giao diện GUI ( Graphical User Interface, tạm dịch là giao diện đồ họa người dùng) để xem dữ liệu, điều khiển thiết bị và kích hoạt cảnh báo thông qua một trang web. Mạch được sử dụng nghiên cứu là Mạch Yolobit: dạng mạch hỗ trợ học lập trình theo phương pháp Stem, những khối lệnh nâng cao cũng được thêm vào cùng phụ kiện đi kèm hệ sinh thái lập trình IOT Yolo Bit. Có thể xây dựng hàm xử lý nhận tín hiệu trên cả 2 chiều giữa thiết bị nhận ( gọi là mạch nhận có gắn cảm biến) và thiết bị gửi ( mạch gửi có gắn cảm biến) : Thiết bị nhận tín hiệu tại nơi nhận cũng vừa là thiết bị gửi từ nơi gửi dữ liệu đi. II. CƠ SỞ THỰC TIỄN: Trong những năm gần đây, chương trình đổi mới giáo dục với định hướng phát triển phẩm chất và năng lực người học thông qua nội dung giáo dục với những kiến thức cơ bản, thiết thực, hiện đại, hài hòa đức, trí, thể, mỹ; chú trọng thực hành, bên cạnh đó học sinh trung học có nhiều cơ hội để tiếp cận lĩnh vực Stem thông qua video, các tài liệu hướng dẫn trên internet. Nhiều đề tài khoa học kĩ thuật với các lĩnh vực hấp dẫn như rô bốt và máy thông minh, hệ thống nhúng, thu hút học sinh có đam mê khoa học công nghệ, muốn hiểu biết sâu về IOT( Internet of things) ngày càng đông đảo hơn. Cụ thể sau 2 năm gần đây đã có bốn đề tài khoa học kĩ thuật cấp trường thực hiện dựa trên kiến thức về lĩnh vực này được tổ chức tại trường Trung học phổ thông Lương Thế Vinh, cũng đã có đề tài tham gia cấp tỉnh được giải cao. Trên cơ sở đó, tôi mạnh dạn tìm hiểu mở rộng thêm khả năng ứng dụng Stem IOT vào việc thực hiện đề tài khoa học kĩ thuật cấp trường qua sáng kiến “Stem Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 3
  7. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật”. Thuật ngữ IOT hay Internet vạn vật đề cập đến mạng lưới tập hợp các thiết bị thông minh và công nghệ tạo điều kiện thuận lợi cho hoạt động giao tiếp giữa thiết bị và đám mây cũng như giữa các thiết bị với nhau. Nhờ sự ra đời của chip máy tính giá rẻ và công nghệ viễn thông băng thông cao, ngày nay, chúng ta có hàng tỷ thiết bị được kết nối với internet. Điều này nghĩa là các thiết bị hàng ngày như bàn chải đánh răng, máy hút bụi, ô tô và nhiều máy móc thiết bị khác có thể sử dụng cảm biến để thu thập dữ liệu và phản hồi lại người dùng một cách thông minh. Nội dung : “Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật ” là phương án hỗ trợ cho việc tiếp cận cách gửi dữ liệu lên Server Adaruit IO, giúp 2 mạch vi xử lý có khả năng lập trình kết nối từ xa với nhau trong quá trình điều khiển máy móc hoạt động, thực hiện được mục đích giúp giáo viên và học sinh đưa lý thuyết IOT vào giải quyết bài toán tin học trong thực tiễn. Thuận lợi : - Các công văn từ cấp trên có đề cập đến nhiệm vụ thúc đẩy hoạt động đổi mới giáo dục Stem, nghiên cứu khoa học kỹ thuật trong nhà trường. Sở giáo dục và và nhà trường cũng đã tổ chức thành công các cuộc thi sáng tạo khoa học, từ đó giáo viên và học sinh có cơ hội nghiên cứu để học tập và trải nghiệm. - Tài liệu nghiên cứu phong phú, dễ tiếp cận. - Các thiết bị đều dễ tìm thấy trên thị trường. Trong sáng kiến này, tôi sử dụng mạch Yolo bit- là 1 vi xử lý chip ESP32 có tích hợp khả năng kết nối Bluetooth / WiFi để gửi nhận thông tin thông qua Server Adaruit IO, với sự hỗ trợ của app lập trình Ohstem - một công cụ mới bắt đầu phổ biến trong trời gian gần đây giúp những ai bắt đầu tiếp cận với lập trình cảm thấy dễ dàng và thuận lợi, dễ hình dung về nhiều tính năng thú vị khi lập trình với các thiết bị IOT.. Khó khăn : Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 4
  8. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật - Nghiên cứu được thực hiện trong điều kiện nhà trường còn thiếu nhiều thiết bị hỗ trợ. Chương trình Stem IOT dành cho học sinh phổ thông nhất là học sinh vùng sâu vùng xa còn mới mẻ, giáo viên cũng như học sinh không có đủ máy móc, phương tiện cá nhân, không có kinh phí để thuận lợi cho việc thực hiện nghiên cứu một cách linh động và xuyên suốt. - Việc gửi nhận tín hiệu không đơn thuần chỉ thực hiện theo hướng dẫn kết nối mà cần có thêm kiến thức lập trình để xử lý các câu lệnh gửi nhận dữ liệu và phát tín hiệu thông báo, vì thế đòi hỏi người thực hiện cần có chuỗi kiến thức sâu để xử lý nhiều khâu liên quan khác ngoài việc tạo tài khoản và thực hiện cài đặt trên Server. III. GIẢI QUYẾT VẤN ĐỀ: Để phát huy hiệu quả trong việc sử dụng tính năng của thiết bị điện tử, chúng ta cần tăng cường chất lượng của 3 yếu tổ : Lưu trữ, xử lý và truyền thông tin để mở rộng khả năng số hóa các thiết bị điện. Khi tìm hiểu việc nhận và gửi thông tin, ngoài việc thực hiện trên một mạch, tôi cùng các học trò đã tìm hiểu chức năng của mạch gửi và mạch nhận bằng cách thay đổi đoạn code lập trình với một vài mạch khác nhau để kiểm tra tín hiệu gửi đến Server và tín hiệu gửi đi từ Server. Sau nhiều lần thực hiện, tôi cũng đã có một số kết luận về cách gửi và nhận dữ liệu giữa hai mạch sao Server có thể đáp ứng tốt nhất nhu cầu lưu trữ, thu thập dữ liệu của người dùng. Để giải quyết bài toán chung về gửi nhận thông tin qua Server, tôi đã chọn một số bài toán nhỏ cụ thể để triển khai tìm hiểu và thực hiện, cụ thể là lập trình trên mạch báo cháy để tín hiệu cháy từ cảm biến được gửi đến Server, thiết lập cài đặt trên Server và sau đó lập trình trên mạch nhận dữ liệu và 1 vài bài toán khác như gửi thông tin từ mạch cảm biến đo độ ẩm, theo dõi tốc độ quạt vi diều khiển bằng biểu đồ trên server, . 1. Đăng kí và cài đặt Server: 1. 1 Đăng kí Server : Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 5
  9. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật Để đăng kí tài khoản, người dùng cần truy cập trang fruit.com/, lựa chọn Get Started for Free, điền các thông tin để tạo tài khoản truy cập. 1.2. Cài đặt Server : - Bảng Feeds: Bảng Feed là vùng tạo ra các biến tiếp nhận va lưu trữ thông tin, có nhiều đối tượng khác nhau được tạo ra ở đây. Trong bài toán ví dụ này, để lưu trữ thông tin của mạch gửi tín hiệu cháy, ta tạo mới 1 đối tượng mang tên FIER với key là “ fire”. Key này được điều chỉnh thành public : Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 6
  10. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật - Theo dõi thông tin từ mạch 1 gửi đến Server : Thông tin từ mạch nhận sẽ được gửi đến biến fier : Giá trị 1 sẽ được gửi đến Server nếu mạch cảm biến phát hiện lửa. Như vậy sau khi kết nối thành công, chúng ta có thể gửi dữ liệu tới Adafruit IO bằng cách đăng ký dữ liệu cho các feed đã tạo và sử dụng chức năng publish và cũng có thể đọc dữ liệu từ các feed. 2. Gửi thông tin đi từ mạch 1 : 2.1. Thiết kế chức năng trên Mạch 1: Để thực hành việc gửi thông tin từ mạch 1, tôi chọn lựa bài toán được xây dựng là thu tín hiệu từ vị trí cần gửi qua cảm biến lửa được gắn trên mạch 1, đây là mạch mở rộng yolobit có khả năng gắn nhiều cảm biến khác nhau. Cách thực hiện cụ thể trong phần dưới đây: - Thực hiện các kết nối vật lý trên mạch yolobit, lập trình cho mạch hoạt động bằng công cụ lập trình là Ohstem App. Mô hình chính mạch yolobit mở rộng gắn cảm biến lửa Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 7
  11. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật 2.2. Xây dựng chức năng gửi thông tin từ mạch 1 đến Server: Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 8
  12. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật - Phần code để gửi dữ liệu lên server Adaruit IO được viết với thư viện MQTT của ohstem app hỗ trợ mạch kết nối Yolobit tại địa chỉ : from mqtt import * import time from yolobit import * button_a.on_pressed = None button_b.on_pressed = None button_a.on_pressed_ab = button_b.on_pressed_ab = -1 # Mô tả hàm này... def G_E1_BB_ADi_thong_tin_ch_C3_A1y(): global chuki, TB chuki = (chuki if isinstance(chuki, (int, float)) else 0) + 1 if chuki == 30: if pin2.read_digital()==0: TB = 1 mqtt.publish('fier', TB) chuki = 0 display.show(Image("00000:00000:00100:00000:00000")) else: TB = 0 mqtt.publish('fier', TB) chuki = 0 display.show(Image("00000:00000:00400:00000:00000")) if True: chuki = 0 mqtt.connect_wifi('Minh Long', 'abcXYZ123') Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 9
  13. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật mqtt.connect_broker(server='io.adafruit.com', port=1883, username='huynhthuyoanh', pass- word='aio_hOJC199nm5mtAL0ecR7NgF97FR5N') while True: G_E1_BB_ADi_thong_tin_ch_C3_A1y() time.sleep_ms(1000) Để đơn giản cho phần code này, ta cũng có thể sử dụng phần lập trình kéo thả, các hình khối được lập trình như sau là để gửi dữ liệu đến Server Adaruit IO: Giá trị gửi đi được cho bằng 1, đồng nghĩa với cảm biến ở mạch 1 phát hiện có lửa, giá trị này được gửi đến đối tượng mang tên là FIER trên Server Adaruit IO. 3. Nhận thông tin trên mạch 2 : 3.1 Thiết kế chức năng trên mạch 2: Để thuận tiện, mạch thứ 2 với mục đích nhận dữ liệu từ Server, tôi cũng bắt đầu với mạch Yolobit, vì vậy mạch này không những nhận dữ liệu và còn có thể chứa cả đoạn code gửi dữ liệu đi theo chiều ngược lại. Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 10
  14. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật 3.2 Xây dựng chức năng nhận thông tin từ Server đến mạch 2: - Phần code để nhận dữ liệu Server Adaruit IO và báo tín hiệu khi mạch 2 nhận được thông tin được viết như sau : Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 11
  15. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật from mqtt import * from yolobit import * button_a.on_pressed = None button_b.on_pressed = None button_a.on_pressed_ab = button_b.on_pressed_ab = -1 import music import time def sound_alarm(): for count in range(5): music.play(['A5:1'], wait=True) music.play(['E5:1'], wait=True) def on_mqtt_message_receive_callback__fier_(th_C3_B4ng_tin): global DEM if th_C3_B4ng_tin == 1: for count in range(3): sound_alarm() display.show(Image("00000:01010:00100:01010:00000")) else: display.show(Image("00000:00000:00400:00000:00000")) if True: mqtt.connect_wifi('Minh Long', 'abcXYZ123') mqtt.connect_broker(server='io.adafruit.com', port=1883, username='huyn- hthuyoanh', password='aio_hOJC199nm5mtAL0ecR7NgF97FR5N') Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 12
  16. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật mqtt.on_receive_message('fier', on_mqtt_message_receive_callback__fier_) while True: mqtt.check_message() time.sleep_ms(1000) Phần code micropython trên đây được sinh bởi đoạn lập trình kéo thả, đây cũng là ưu điểm về mặt “đơn giản hóa” khi giáo viên hỗ trợ học sinh bắt đầu tiếp cận với việc tìm hiểu lập trình kết nối này, đoạn chương trình này được thiết kế cụ thể như sau : Thiết kế trên mạch 1 Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 13
  17. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật Thiết kế trên mạch 2 4. Một số ví dụ khác khi gửi nhận thông tin trên Server Adafruit IO: Để có thể lưu dữ liệu trên server, chúng ta cần phải phân loại cho nó. Thông thường, chúng ta gọi là một kênh dữ liệu, hay feed. Mỗi đối tượng trong hệ thống cũng sẽ thường có 1 kênh dữ liệu cho riêng nó. Chẳng hạn như để lưu trạng thái của một bóng đèn, chúng ta cần một kênh dữ liệu, tên là YOLO_LED chẳng hạn. Sau khi đăng nhập vào hệ thống thành công, chúng ta bắt đầu tạo một kênh dữ liệu đầu tiên, với các bước hướng dẫn bên dưới. Bước 1: Mở danh sách kênh dữ liệu, bằng cách nhấn vào Feeds. Tiếp theo đó, chọn tiếp vào tính năng View all để liệt kênh tất cả các kênh dữ liệu đang có trong tài khoản. Việc nhận dữ liệu từ Server cũng có thể được điều khiển bằng các đối tượng được tạo ra trên giao diện Dashboards, tùy theo loại dữ liệu được gửi đến, ví dụ như : Tín hiệu bật tắt đèn là sự kiện từ Dashboards được tạo ra để điều khiển thiết bị từ xa, tín hiệu điều khiển sự kiện thay đổi tốc độ của quạt, biểu đồ thay đổi nhiệt độ, Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 14
  18. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật độ ẩm Tùy theo nhu cầu sử dụng dữ liệu mà người dùng có thể tạo các biểu đồ tương ứng để theo dõi các thông số hoặc điều khiển từ xa các thiết bị. Với sự hỗ trợ đa dạng, ứng dụng cho phép lựa chọn việc thiết kế giao diện sao cho đẹp và phù hợp, gọn gàng trên 1 trang màn hình : Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 15
  19. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật Để tránh trường hợp Server không đáp ứng kịp, cần lập trình sao cho thông tin gửi lên Server Adafruit IO cách nhau khoảng thời gian không quá ngắn, ví dụ như trong các bài toán trên thì cách một giây thông tin sẽ được gửi đến Server 1 lần. IV. KẾT QUẢ ĐẠT ĐƯỢC: Với bài toán cụ thể được lựa chọn để minh họa là Gửi thông báo từ mạch 1- nơi có cảm biến cháy đến Server Adafruit IO, và Thông tin này được gửi đến mạch 2 để báo tín hiệu, tôi đã thực hiện thành công việc kết nối đê gửi và nhận dữ liệu thông qua mạng internet, Tôi cũng đã hướng dẫn cho học sinh thực hiện kết nối này với nhiều bài toán Stem IOT khác, giúp mở rộng kĩ năng thực hành bộ môn Tin học ở chủ đề liên quan được tốt hơn. Môn tin học có nhiều chủ đề, có chủ đề khá khô khan như kiến thức lập trình ở sách Tin học lớp 10, Tin học lớp 11. Nhờ những chủ đề hứng thú như giới thiệu về Stem IOT, cụ thể là gửi nhận thông tin từ 2 mạch qua server Adafruit IO, điều khiển Robot, mà học sinh có hứng thú hơn trong suốt quá trình học bộ môn tin học. Năm học 2023-2024, Trường THPT Lương Thế Vinh có tổ chức hội thi “ Khoa học kĩ thuật ”, Đề tài khoa học kĩ thuật “Cảnh báo cháy từ xa” do các nhân tôi hướng dẫn 2 học sinh tham gia cuộc thi khoa học kĩ thuật cập trường thực hiện dựa trên kiến thức - gửi nhận thông tin từ 2 mạch qua server Adafruit IO đã đạt được giải 3. Học sinh hoàn thành đề tài và có hứng thú với chủ đề truyền nhận thông tin trong thực tiễn. Với những kết quả đáng khích lệ trên, là động lực để tôi tiếp tục đổi mới, khai thác việc ứng dụng công cụ tin học trong công việc của mình. Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 16
  20. Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật C. PHẦN KẾT LUẬN VÀ KIẾN NGHỊ I. KẾT LUẬN: Từ khi sách giáo khoa các bộ môn bắt đầu được thay đổi thì môn Tin học cũng có nội dung rất mới so với chương trình dạy học trước đây, nội dung STEM hay IOT được đề cập đến trong chương trình học là cơ hội để giáo viên và học sinh tiếp cận các nội dung tự động hóa, giúp giám sát thiết bị tốt hơn, định hướng nghề nghiệp về mảng công nghệ thông tin, rèn luyện kỹ năng tư duy sáng tạo và giải quyết vấn đề. Mảng tin học trong phổ thông rất đa dạng, vì thế giúp học sinh biết thêm nhiều vấn đề, thấy được nhiều ứng dụng thực tế của bộ môn này vừa giúp học sinh yêu thích môn học, cũng vừa giúp học sinh có cơ hội sáng tạo, phát triển tư duy trau dồi kiến thức, tạo ra các sản phẩm khoa học kĩ thuật trong lĩnh vực công nghệ. Ngoài ra, sự cần thiết và phổ biến của mạng Internet hiện nay đã làm cho phụ huynh lo lắng trong quá trình giám sát con em vì những “ tác dụng phụ” mà nó, rất nhiều học sinh chưa kịp nhận được lợi ích từ Internet mang lại thì đã sử dụng nó không đúng mục đích như chơi game, nghiện lướt web, chiếm mất nhiều thời gian học tập quan trọng ở cấp phổ thông và gây ra nhiều vấn đề tiêu cực khác. Vì vậy việc đưa thêm kiến thức thú vị về Stem IOT giúp học sinh thay vì sử dụng các thiết bị điện thoại, máy tính không đúng cách thì có cơ hội sử dụng thời gian hữu ích vào việc nghiên cứu. Chủ đề “Stem IOT - gửi nhận thông tin từ 2 mạch qua Server Adafruit IO nhằm tạo hứng thú cho học sinh Trường THPT Lương Thế Vinh tham gia nghiên cứu khoa học kỹ thuật” vừa gần gũi, dễ tiếp cận, khi học sinh tham gia nội dung này có thể: - Biết cách đăng kí, sử dụng Server Adafruit IO. - Hiểu được cách thiết kế mô hình gửi, nhận dữ liệu từ mạch gửi đến mạch nhận Giáo viên thực hiện: Huỳnh Thuý Oanh - Trường THPT Lương Thế Vinh - Trang 17