SudoFlex
Controller digitale programmabile
Scheda di controllo PID PLC fai da te
Facilmente trascina e rilascia
GUI
La confezione include
* 1 scheda controller SudoFlex Basic
* Manuale dell'utente (scaricabile)
* Software GUI SudoFlex Configurator - Gratuito (scaricabile)
(Per ora SudoFlex-Configurator funziona solo su piattaforme Windows e Linux a 64 bit)
*** Spedizione ***
Spedizione standard gratuita per posta aerea con numero di tracciamento
Le date di consegna stimate variano tra 5-9 giorni lavorativi,
Quasi tutti i ritardi si verificano a causa dei controlli di sicurezza durante il trasporto
e controlli personalizzati nel paese di destinazione
introduzione
Il progetto SudoFlex mira a creare una famiglia di schede per applicazioni di controllo digitale. La scheda SFB1 e il primo passo del progetto e per ora l'unica scheda disponibile sul mercato. Questo repository include tutte le informazioni e le risorse necessarie per iniziare a utilizzare SFB1. Di seguito sono mostrate le viste anteriore e posteriore della scheda.
Gli algoritmi di controllo per la scheda sono sviluppati da blocchi integrati e connessioni di blocco. Ci sono 94 blocchi per diverse funzioni. Di seguito e riportato un riepilogo dei blocchi. |
|
|
|
- 4 tipi di blocchi di conversione: F32_U32, U32_F32, F32_S32, S32_F32
- 4 blocchi di controllo del galleggiante: ISNAN, ISINF, ISFINITE, ISNORMALE
- 4 blocchi di arrotondamento: SOFFITTO, PAVIMENTO, TRONCO, TONDO
- 15 blocchi numerici: SQRT, CBRT, LN, LOG, LOG2, EXP, EXP2, SIN, COS, TAN, ASIN, ACOS, ATAN, ATAN2, ABS
- 14 blocchi aritmetici: ADD, MUL, ADDC, MULC, SUB, DIV, MOD, FMOD, REMAINDER, EXPT, HYPOT
- SMA: Media mobile semplice
- CM: Media mobile cumulativa
- EMA: Media mobile esponenziale
- 8 blocchi operativi bit a bit: SHL, SHR, ROL, ROR, BITAND, BITOR, BITXOR, BITNOT
- 5 blocchi di selezione: MAX, MIN, LIMITE, SEL, MUX
- 6 blocchi di confronto: GT, GE, LT, LE, EQ, NE
- 6 blocchi logici: NOT, AND, OR, XOR, ANDBFOR, ORBFAND
- 2 blocchi flip-flop:
- SR: Imposta il flip-flop dominante
- RS: Reimposta il flip-flop dominante
- 2 blocchi di rilevamento dei bordi:
- R_TRIG: Rilevamento del fronte di salita
- F_TRIG: Rilevamento del fronte di discesa
- 3 blocchi contatore:
- CTU: Contatore in salita
- CTD: contatore alla rovescia
- CTUD: Contatore su-giù
- 3 blocchi timer:
- TONNELLATA: Timer con ritardo all'accensione
- TOF: Timer di ritardo alla diseccitazione
- TP: Timer a impulsi
- 6 blocchi I/O:
- DI: Input digitale
- FARE: Output digitale
- PWM: Uscita PWM
- PWM: Ingresso PWM
- ENC: Ingresso encoder incrementale
- AI: Ingresso analogico
- 5 blocchi sorgente:
- COST: Numeri costanti
- CATTURARE: acquisisce i valori di input quando viene attivato
- TEMPO: Fornisce il valore temporale in termini di periodo di campionamento
- ONDA: Genera un'onda definita dall'utente
- POLSO: Generatore di impulsi. Utile per l'azionamento del motore passo-passo.
- 5 blocchi di controllo:
- UDELAY: Ritardo unita, ritarda l'ingresso per un periodo di campionamento
- TFD_1: Funzione di trasferimento discreta del primo ordine
- TFD_2: Funzione di trasferimento discreta del secondo ordine
- TFD_3: Funzione di trasferimento discreta del terzo ordine
- PID: Regolatore PID con anti-windup e filtro derivativo
- 1 blocco di connettivita:
- MODBUS_RTU: Comunicazione Modbus RTU
- Altri blocchi: PAUSA
Per informazioni di riferimento dettagliate su SFB1 e possibile fare riferimento al manuale utente in formato pdf. L'ultimo manuale dell'utente puo essere trovato sotto Rilasci sezione.
Mappatura Pin e Definizioni Pulsanti/Led
La mappatura dei pin e le definizioni dei pulsanti/led possono essere visualizzate nella tabella sottostante.
![SFB1_Pinmap](https://github.com/sudorobotics/SudoFlex/raw/main/res/SudoFlex-Basic-1_rev2_pinmap.png)
Abbreviazione |
Descrizione |
DIx |
Pin di ingresso digitale |
DOx |
Pin di uscita digitale |
PWMix |
Pin di ingresso PWM |
PWMOx |
Pin di uscita PWM |
ENCx |
Pin di ingresso dell'encoder incrementale |
AIx |
Pin di ingresso analogico |
AOX |
Pin di uscita analogica |
MODBUS_xx |
Pin Modbus RTU |
SINCRONIZZAZIONE (26) |
Perno di sincronizzazione. Questo pin va alto all'inizio del campionamento e rimane alto durante l'esecuzione dell'algoritmo. Quindi la frequenza del segnale e uguale alla frequenza di campionamento e l'ampiezza dell'impulso del segnale mostra il tempo di esecuzione dell'algoritmo. |
STA (27) |
Se il tempo di esecuzione dell'algoritmo supera il periodo di campionamento, questo pin diventa alto. Inoltre e collegato al led STA. |
TX, RX (28, 29) |
Pin dell'interfaccia di programmazione UART per SFB1 |
GND (30) |
Pin di terra per SFB1 |
3,3 V (31) |
Pin di alimentazione per SFB1. La tensione applicata non deve superare i 3,3V e deve essere regolata. |
RFS |
Pulsante di ripristino delle impostazioni di fabbrica. Se questo pulsante viene premuto durante il ripristino, la scheda cancella l'algoritmo salvato e torna alla stringa dell'algoritmo predefinita. |
RST |
Pulsante di reset |
Loop SW |
Interruttore on-off del loop |
PWR |
Led di alimentazione |
STA |
Led di stato. Questo led si accende se la frequenza di campionamento e troppo alta per l'attuale esecuzione dell'algoritmo o se la frequenza di campionamento e zero. |
introduzione
Il progetto SudoFlex mira a creare una famiglia di schede per applicazioni di controllo digitale. La scheda SFB1 e il primo passo del progetto e per ora l'unica scheda disponibile sul mercato. Questo repository include tutte le informazioni e le risorse necessarie per iniziare a utilizzare SFB1. Di seguito sono mostrate le viste anteriore e posteriore della scheda.
Gli algoritmi di controllo per la scheda sono sviluppati da blocchi integrati e connessioni di blocco. Ci sono 94 blocchi per diverse funzioni. Di seguito e riportato un riepilogo dei blocchi. |
|
|
|
- 4 tipi di blocchi di conversione: F32_U32, U32_F32, F32_S32, S32_F32
- 4 blocchi di controllo del galleggiante: ISNAN, ISINF, ISFINITE, ISNORMALE
- 4 blocchi di arrotondamento: SOFFITTO, PAVIMENTO, TRONCO, TONDO
- 15 blocchi numerici: SQRT, CBRT, LN, LOG, LOG2, EXP, EXP2, SIN, COS, TAN, ASIN, ACOS, ATAN, ATAN2, ABS
- 14 blocchi aritmetici: ADD, MUL, ADDC, MULC, SUB, DIV, MOD, FMOD, REMAINDER, EXPT, HYPOT
- SMA: Media mobile semplice
- CM: Media mobile cumulativa
- EMA: Media mobile esponenziale
- 8 blocchi operativi bit a bit: SHL, SHR, ROL, ROR, BITAND, BITOR, BITXOR, BITNOT
- 5 blocchi di selezione: MAX, MIN, LIMITE, SEL, MUX
- 6 blocchi di confronto: GT, GE, LT, LE, EQ, NE
- 6 blocchi logici: NOT, AND, OR, XOR, ANDBFOR, ORBFAND
- 2 blocchi flip-flop:
- SR: Imposta il flip-flop dominante
- RS: Reimposta il flip-flop dominante
- 2 blocchi di rilevamento dei bordi:
- R_TRIG: Rilevamento del fronte di salita
- F_TRIG: Rilevamento del fronte di discesa
- 3 blocchi contatore:
- CTU: Contatore in salita
- CTD: contatore alla rovescia
- CTUD: Contatore su-giù
- 3 blocchi timer:
- TONNELLATA: Timer con ritardo all'accensione
- TOF: Timer di ritardo alla diseccitazione
- TP: Timer a impulsi
- 6 blocchi I/O:
- DI: Input digitale
- FARE: Output digitale
- PWM: Uscita PWM
- PWM: Ingresso PWM
- ENC: Ingresso encoder incrementale
- AI: Ingresso analogico
- 5 blocchi sorgente:
- COST: Numeri costanti
- CATTURARE: acquisisce i valori di input quando viene attivato
- TEMPO: Fornisce il valore temporale in termini di periodo di campionamento
- ONDA: Genera un'onda definita dall'utente
- POLSO: Generatore di impulsi. Utile per l'azionamento del motore passo-passo.
- 5 blocchi di controllo:
- UDELAY: Ritardo unita, ritarda l'ingresso per un periodo di campionamento
- TFD_1: Funzione di trasferimento discreta del primo ordine
- TFD_2: Funzione di trasferimento discreta del secondo ordine
- TFD_3: Funzione di trasferimento discreta del terzo ordine
- PID: Regolatore PID con anti-windup e filtro derivativo
- 1 blocco di connettivita:
- MODBUS_RTU: Comunicazione Modbus RTU
- Altri blocchi: PAUSA
Per informazioni di riferimento dettagliate su SFB1 e possibile fare riferimento al manuale utente in formato pdf. L'ultimo manuale dell'utente puo essere trovato sotto Rilasci sezione.
Mappatura Pin e Definizioni Pulsanti/Led
La mappatura dei pin e le definizioni dei pulsanti/led possono essere visualizzate nella tabella sottostante.
![SFB1_Pinmap](https://github.com/sudorobotics/SudoFlex/raw/main/res/SudoFlex-Basic-1_rev2_pinmap.png)
Abbreviazione |
Descrizione |
DIx |
Pin di ingresso digitale |
DOx |
Pin di uscita digitale |
PWMix |
Pin di ingresso PWM |
PWMOx |
Pin di uscita PWM |
ENCx |
Pin di ingresso dell'encoder incrementale |
AIx |
Pin di ingresso analogico |
AOX |
Pin di uscita analogica |
MODBUS_xx |
Pin Modbus RTU |
SINCRONIZZAZIONE (26) |
Perno di sincronizzazione. Questo pin va alto all'inizio del campionamento e rimane alto durante l'esecuzione dell'algoritmo. Quindi la frequenza del segnale e uguale alla frequenza di campionamento e l'ampiezza dell'impulso del segnale mostra il tempo di esecuzione dell'algoritmo. |
STA (27) |
Se il tempo di esecuzione dell'algoritmo supera il periodo di campionamento, questo pin diventa alto. Inoltre e collegato al led STA. |
TX, RX (28, 29) |
Pin dell'interfaccia di programmazione UART per SFB1 |
GND (30) |
Pin di terra per SFB1 |
3,3 V (31) |
Pin di alimentazione per SFB1. La tensione applicata non deve superare i 3,3V e deve essere regolata. |
RFS |
Pulsante di ripristino delle impostazioni di fabbrica. Se questo pulsante viene premuto durante il ripristino, la scheda cancella l'algoritmo salvato e torna alla stringa dell'algoritmo predefinita. |
RST |
Pulsante di reset |
Loop SW |
Interruttore on-off del loop |
PWR |
Led di alimentazione |
STA |
Led di stato. Questo led si accende se la frequenza di campionamento e troppo alta per l'attuale esecuzione dell'algoritmo o se la frequenza di campionamento e zero. |
Connessioni minime
Per iniziare a sviluppare con la scheda SFB1, e necessario effettuare i collegamenti minimi come mostrato nella figura sottostante. Primo, regolamentato L'alimentazione a 3,3 V deve essere fornita alla scheda. In secondo luogo, una scheda convertitore UART-USB deve essere collegata alla scheda SFB1 per stabilire una connessione dell'interfaccia di programmazione e registrazione con SudoFlex-Configurator in esecuzione sul computer. Le schede convertitore UART-USB sono comuni sul mercato e possono essere ottenute facilmente a prezzi ragionevoli. Entrambe le schede basate su FTDI e CH340 sono perfettamente convenienti, tuttavia le schede basate su CH340 potrebbero richiedere l'installazione del driver.
![Minimum-connections](https://github.com/sudorobotics/SudoFlex/raw/main/res/0_MinimumConnections_bb.png)
Configuratore SudoFlex
SudoFlex-Configurator e un'applicazione GUI desktop utilizzata per lo sviluppo di algoritmi di controllo. Ha anche un'interfaccia seriale che puo essere utilizzata per scaricare gli algoritmi generati sulla scheda e tracciare i messaggi di registro. Uno screenshot dell'applicazione puo essere visto nella figura sottostante.
![SudoFlex-Configurator](https://github.com/sudorobotics/SudoFlex/raw/main/res/SudoFlex-Configurator.png)
SudoFlex-Configurator funziona solo su piattaforme Windows e Linux a 64 bit per ora. Sotto Rilasci sezione, ci sono 3 file dell'applicazione:
- SudoFlex-Configurator.Setup.1.xxexe: file di installazione per l'installazione di Windows.
- SudoFlex-Configurator.1.xxexe: file dell'applicazione Windows portatile per gli utenti che desiderano utilizzare l'applicazione senza installazione.
- SudoFlex-Configurator-1.xxAppImage: file dell'applicazione Linux
Note per utenti Windows
- E possibile utilizzare il file di installazione per installare SudoFlex-Configurator come una normale applicazione desktop di Windows. SudoFlex-Configurator e un'applicazione autofirmata. Pertanto, Windows potrebbe tentare di bloccare l'installazione tramite Smart Screen. E possibile continuare l'installazione facendo clic su "Ulteriori informazioni" testo.
- Se non si desidera installare SudoFlex-Configurator, e possibile utilizzare il file dell'applicazione portatile. E possibile eseguire direttamente l'applicazione eseguendo questo file. Sfortunatamente ancora una volta, Smart Screen potrebbe bloccare l'esecuzione dell'applicazione.
Note per utenti Linux
- Il file .AppImage e il file dell'applicazione autonomo per Linux. Puoi scaricare direttamente questo file, renderlo eseguibile ed eseguire l'applicazione in Linux.
- SudoFlex-Configurator necessita di una connessione alla porta seriale per comunicare con la scheda. Pertanto, e necessario aggiungere l'utente al "chiamata in uscita" gruppo sotto Linux. Il seguente comando puo essere utilizzato per questo scopo:
sudo usermod -a -G dialout <nomeutente>
Inoltre, potrebbe essere necessario modificare i permessi di accesso della porta in Linux. Ad esempio, il seguente comando puo essere utilizzato per modificare i permessi di accesso di ttyUSB0:
sudo chmod a+rw /dev/ttyUSB0
Esempi
7 esempi introduttivi sono preparati per un'introduzione delicata a SFB1. I file Json degli esempi si trovano nella cartella "examples". Questi esempi illustrano le funzioni I/O e di comunicazione di base dell'SFB1. Dopo questa introduzione, il manuale dell'utente SFB1 dovrebbe essere utilizzato per informazioni dettagliate su altre caratteristiche della scheda a blocchi.
Lampeggio 1 Led
In questo esempio un led lampeggia alla frequenza di campionamento. Il blocco DO viene utilizzato per pilotare il led collegato al pin-0 (DO0). Il blocco NOT viene utilizzato per commutare lo stato del led.
![1_LedBlink_bb](https://github.com/sudorobotics/SudoFlex/raw/main/res/1_LedBlink_bb.png)
![1_LedBlink_SC](https://github.com/sudorobotics/SudoFlex/raw/main/res/1_LedBlink_SC.png)
Interfaccia 2 pulsanti/led con DI e DO
In questo esempio un led si accende alla pressione del pulsante e si spegne al rilascio del pulsante. Il blocco DO viene utilizzato per pilotare il led collegato al pin-0(DO0). Il blocco DI viene utilizzato per leggere lo stato del pulsante in cui il pulsante e collegato al pin-9 (DI9).
|