🧪 Stanno arrivando nuovi tutorial — dal braccio robotico al sensore
Vai al contenuto
Acquista questo prodottoNegozio ufficialeSito ufficiale

PC · Esecuzione con Python ​

Indice ​

  1. Preparazione dell'hardware
  2. Collegamento hardware
  3. Configurazione dell'ambiente software
  4. Esecuzione del programma di esempio
  5. Domande frequenti

Preparazione dell'hardware ​

Materiale necessario ​

MaterialeDescrizione
Sensore JUXI_HeartRate_SPO2Modulo di frequenza cardiaca e SpO2
Modulo USB-TTLCH340 / CP2102 / FT232, ecc.
Cavi Dupont4 (femmina-femmina)
Computer WindowsWin7/Win10/Win11

Collegamento hardware ​

Schema di collegamento ​

Pin del sensorePin del modulo USB-TTLDescrizione
VCC3.3V o 5VPolo positivo dell'alimentazione
GNDGNDPolo negativo dell'alimentazione
TXRXIl sensore trasmette → il modulo riceve
RXTXIl sensore riceve → il modulo trasmette

Illustrazione

⚠️ Avviso importante:

  1. Spostare l'interruttore del modulo su UART!
  2. TX e RX devono essere collegati in modo incrociato!
  3. Il sensore supporta 3,3V e 5V; non collegare una tensione errata
  4. Collegare prima tutti i cavi, poi inserire l'USB nel computer

Schema di cablaggio ​

text
传感器        USB转TTL模块
┌──────┐      ┌──────────┐
│ VCC  │──────│ 3.3V/5V  │
│ GND  │──────│ GND      │
│ TX   │──────│ RX       │  ← 交叉连接
│ RX   │──────│ TX       │  ← 交叉连接
└──────┘      └──────────┘

Configurazione dell'ambiente software ​

Installare il driver ​

In base al modello di chip del proprio adattatore USB-TTL, installare il driver corrispondente:

Al termine dell'installazione, inserire il modulo USB-TTL.

Visualizzare la porta COM ​

Metodo 1: Gestione dispositivi ​

  1. Premere Win + X e selezionare "Gestione dispositivi"
  2. Espandere "Porte (COM e LPT)"
  3. Controllare il numero di porta COM corrispondente all'adattatore USB-TTL (ad esempio COM3)

Metodo 2: rilevamento automatico del programma ​

Durante l'esecuzione del programma di esempio viene mostrato automaticamente l'elenco di tutte le porte seriali disponibili.

Installare le dipendenze Python ​

Aprire il prompt dei comandi (CMD) o PowerShell ed eseguire:

bash
pip install pyserial

Esecuzione del programma di esempio ​

Scaricare e decomprimere l'archivio JUXI_HeartRate_SPO2.zip

Posizione dei file ​

text
JUXI_HeartRate_SPO2/python/windows/
├── gain_heartbeat_SPO2.py  ← 主程序(直接运行这个)
├── JUXI_HeartRate_SPO2_Windows.py
├── JUXI_RTU_Windows.py
└── README_CN.md        ← 本文件
└── README.md

Passaggi di esecuzione ​

  1. Verificare che il collegamento hardware sia corretto
  • VCC → 3.3V/5V
  • GND → GND
  • TX → RX (incrociato)
  • RX → TX (incrociato)
  1. Inserire l'USB nel computer
  2. Eseguire il programma
bash
cd D:\JUXI_HeartRate_SPO2\python\windows
bash
python gain_heartbeat_SPO2.py
  1. Seguire le indicazioni
  • Il programma elenca tutte le porte seriali disponibili
  • Inserire il numero della propria porta COM (ad esempio COM3)
  • Il programma rileva automaticamente il sensore e avvia la misurazione

Output previsto ​

python
==================================================
JUXI Blood Oxygen Sensor - Windows Test
==================================================
Available serial ports:
  COM3

Please enter the COM port number (e.g., COM3):

Connecting to COM3 at 9600 baud...
Initializing sensor...
Sensor initialized successfully!

Starting data collection...
Sensor LED should be ON now!

Place your finger on the sensor...

SPO2 (血氧): 97 %
Heart Rate (心率): 82 BPM
Temperature (温度): 26.5 °C
SPO2 (血氧): 98 %
Heart Rate (心率): 78 BPM
Temperature (温度): 26.6 °C
...

Premere Ctrl + C per arrestare il programma.


Descrizione delle funzioni del programma ​

API principali ​

bash
# 创建传感器对象
sensor = BloodOxygenSensor("COM3", 9600)

# 初始化传感器
sensor.begin()

# 开始采集(LED亮起)
sensor.sensor_start_collect()

# 读取心率血氧
sensor.get_heartbeat_SPO2()
print(f"SPO2: {sensor.SPO2}%")
print(f"Heart Rate: {sensor.heartbeat} BPM")

# 读取温度
temp = sensor.get_temperature_c()

# 停止采集(LED熄灭)
sensor.sensor_end_collect()

# 关闭串口
sensor.close()

Domande frequenti ​

D1: Cosa fare se non si trova la porta COM? ​

R:

  1. Verificare che l'adattatore USB-TTL sia inserito correttamente
  2. Reinstallare il driver
  3. Provare con un'altra porta USB
  4. In Gestione dispositivi, controllare se compare un "dispositivo sconosciuto"

D2: Cosa fare se l'inizializzazione del sensore fallisce? ​

R:

  1. Controllare il cablaggio:
  • VCC e GND sono collegati correttamente?
  • TX e RX sono collegati in modo incrociato? (il problema più comune)
  1. Verificare che il baud rate sia 9600
  2. Controllare che il modulo USB-TTL funzioni correttamente
  3. Ricollegare l'USB

D3: Cosa fare se i dati mostrano sempre -1? ​

R:

  1. Verificare che il dito sia posizionato correttamente sul sensore (coprendo completamente l'area del LED)
  2. Mantenere il dito stabile, senza muoverlo
  3. Attendere qualche secondo per la stabilizzazione dei dati
  4. Controllare se il LED del sensore è acceso

D4: Il LED non si accende ma la comunicazione funziona? ​

R:

  • Potrebbe essere un problema hardware del LED, ma il sensore funziona correttamente
  • Se i dati sono normali, è possibile ignorare il LED spento

D5: Cosa fare se la porta seriale è occupata? ​

R:

  1. Chiudere gli altri programmi per la porta seriale (assistente di porta seriale, Arduino IDE, ecc.)
  2. Controllare se sono in esecuzione altri programmi Python
  3. Ricollegare l'USB

D6: Cosa fare se i dati non sono accurati? ​

R:

  1. Assicurarsi che il dito copra completamente l'area ottica del sensore
  2. Mantenere un ambiente tranquillo durante la misurazione; non parlare e non muoversi
  3. Attendere più di 30 secondi per la stabilizzazione dei dati
  4. Effettuare più misurazioni e calcolare la media

Specifiche tecniche ​

ParametroSpecifica
Modalità di comunicazioneUART (livello TTL)
Baud rate9600 bps (predefinito)
Formato dei dati8N1 (8 bit di dati, nessuna parità, 1 bit di stop)
Tensione di alimentazione3.3V / 5V
Intervallo di misura SPO235% - 100%
Intervallo di misura della frequenza cardiaca30 - 250 BPM
Indirizzo del dispositivo Modbus0x20

Descrizione dei registri Modbus ​

Indirizzo del registroFunzioneDescrizione
0x02ID del dispositivoLettura: restituisce 0x0020
0x06-0x09Dati di frequenza cardiaca e SpO2Lettura: SPO2 + frequenza cardiaca
0x0ATemperaturaLettura: temperatura a bordo
0x10Controllo acquisizioneScrittura: 0x0001=avvia, 0x0002=arresta