WiFi Shield

WiFi Shield เพิ่ม Wi-Fi 2.4 GHz ให้กับ OpenMV Cam ที่ไม่มีระบบเครือข่ายในตัว โดยใช้โมดูล Atmel WINC1500 เสียบเข้ากับด้านล่างของ header OpenMV Cam ใดก็ได้

WiFi Shield

ดูข้อมูล datasheet ฉบับเต็ม รูปภาพ และการสั่งซื้อได้ที่ หน้าผลิตภัณฑ์ WiFi Shield

Note

รองรับเฉพาะ OpenMV Cam, M4, M7, H7 และ H7 Plus เท่านั้น

จุดเด่น

  • Wi-Fi 2.4 GHz b/g/n ผ่านโมดูล Atmel WINC1500

  • TLS 1.2 hardware crypto สำหรับ HTTPS / MQTTS

ผังพิน

WiFi Shield Pinout

อ้างอิงพิน

พิน

ฟังก์ชัน

P0

SPI MOSI — ข้อมูลไปยังโมดูล WINC1500

P1

SPI MISO — ข้อมูลจากโมดูล WINC1500

P2

สัญญาณนาฬิกา SPI

P3

SPI chip select

P6

Chip enable

P7

Module reset

P8

Module interrupt

3.3V rail

จ่ายไฟให้โมดูล WINC1500

GND rail

กราวด์ร่วม

การใช้งาน

ขับ shield ผ่านคลาส network.WINC ในโหมด station เริ่มต้น เชื่อมต่อเครือข่าย Wi-Fi และพิมพ์ IP ที่ได้รับ:

import network
import time

SSID = "your-network"
KEY = "your-password"

wlan = network.WINC()  # station mode by default
wlan.connect(SSID, KEY)

while not wlan.isconnected():
    print("connecting...")
    time.sleep_ms(1000)

print("Wi-Fi IP:", wlan.ifconfig()[0])

shield ยังสามารถทำงานเป็น Wi-Fi access point ได้ — ส่ง MODE_AP ไปยัง constructor และเรียก start_ap() เพื่อเปิด AP:

import network

wlan = network.WINC(network.WINC.MODE_AP)
wlan.start_ap("openmv-cam", security=network.WINC.OPEN)
print("AP IP:", wlan.ifconfig()[0])

Note

การใช้งาน AP ของ WINC1500 รองรับเพียงหนึ่งไคลเอ็นต์ต่อครั้งและรองรับเฉพาะโหมดความปลอดภัย OPEN และ WEP เท่านั้น

เฟิร์มแวร์ของ WINC1500 เองสามารถตรวจสอบและอัปเดตได้จากกล้อง พิมพ์เวอร์ชันเฟิร์มแวร์ที่กำลังทำงานด้วย:

import network

wlan = network.WINC()
print("Firmware version:", wlan.fw_version())

อิมเมจเสถียรล่าสุด (winc_19_7_6.bin) ถูกบรรจุมาใน OpenMV IDE ที่ <openmv-ide-install-dir>/share/qtcreator/firmware/WINC1500/ และใช้งานได้เฉพาะกับฮาร์ดแวร์ ATWINC1500-MR210PB รุ่นใหม่กว่าเท่านั้น ในการแฟลช คัดลอกไฟล์ .bin ไปยัง SD card ของกล้อง ดีดการ์ดออกเพื่อล้าง FAT cache รีเซ็ตบอร์ด แล้วรัน:

import network

wlan = network.WINC(mode=network.WINC.MODE_FIRMWARE)
wlan.fw_update("winc_19_7_6.bin")

fw_dump() อ่านอิมเมจปัจจุบันกลับออกมาเป็นไฟล์ในวิธีเดียวกัน ดูคลาส network.WINC สำหรับรายการเมธอดครบถ้วน