Sommario:

Tester automatico del dispositivo con Arduino: 9 passaggi
Tester automatico del dispositivo con Arduino: 9 passaggi

Video: Tester automatico del dispositivo con Arduino: 9 passaggi

Video: Tester automatico del dispositivo con Arduino: 9 passaggi
Video: Sensore di parcheggio con Arduino - Video 275 2024, Luglio
Anonim
Tester automatico del dispositivo con Arduino
Tester automatico del dispositivo con Arduino
Tester automatico del dispositivo con Arduino
Tester automatico del dispositivo con Arduino

Potrebbe non sembrare molto, ma questa è probabilmente la cosa più utile che abbia mai realizzato con un Arduino. È un tester automatico per il prodotto che vendo chiamato Power Blough-R. Non solo mi fa risparmiare tempo (attualmente mi ha fatto risparmiare almeno 4 ore e oltre) ma mi dà anche una fiducia molto più forte che il prodotto sia funzionante al 100% prima della spedizione.

Il Power Blough-R, pronunciato "Power Blocker" (è un gioco sul mio nome che è sorprendentemente pronunciato "lock"!), Serve a risolvere il problema di alimentazione di backfeed che spesso si verifica quando si utilizza octoprint con una stampante 3D.

Per utilizzare il tester, basta inserire un Power Blough-R nelle intestazioni USB e premere il pulsante di ripristino sull'Arduino Nano. Il tester eseguirà una serie di test e indicherà se il dispositivo ha superato o meno i test utilizzando il LED integrato del Nano (fisso per superato, lampeggiante per fallito).

Quando hai molto da fare, trovare modi per ridurre il tempo per unità può avere un impatto enorme, l'utilizzo di questo tester ha ridotto il tempo necessario per testare un'unità da circa 30 secondi a 5 secondi. Anche se 25 secondi non sembrano molti, quando hai 100 di queste cose da fare si sommano!

Penso che la cosa più impressionante che posso dire è che con questo strumento mi ci vuole più tempo per testare il Power Blough-R due volte rispetto ad aprire semplicemente la borsa antistatica in cui viene spedito!

Probabilmente non avrai bisogno di costruire questo dispositivo esatto, ma spero che parte di quello che sto facendo possa esserti utile.

Passaggio 1: guarda il video

Image
Image

La maggior parte di ciò che tratterò in questo articolo è disponibile in questo video, quindi dai un'occhiata se i video fanno per te!

Passaggio 2: il potere Bough-R

Il Potere Bough-R
Il Potere Bough-R

Allora, cos'è il Power Blough-R e cosa fa?

Se hai mai usato Octoprint con la tua stampante 3D, c'è spesso un problema in cui lo schermo della tua stampante è tenuto acceso dall'alimentazione USB dal raspberry pi, anche quando la stampante è spenta. Anche se questa non è la fine del mondo, può diventare piuttosto fastidioso soprattutto in una stanza buia.

Il Power Blough-R è un semplice PCB con un connettore USB maschio e femmina su di esso, ma non collega la linea 5V.

Esistono altri metodi per risolvere questo problema, alcune persone tagliano la linea 5V del loro cavo USB o mettono del nastro adesivo sul connettore 5V, ma volevo trovare un modo semplice e robusto per ottenere lo stesso risultato, senza danneggiare nessuno Cavi USB!

Se sei interessato ai Power BLough-R, sono disponibili per l'acquisto:

  • Sul mio Tindie Store (kit o assemblato)
  • TH3dstudio.com (assemblato)

(Proprio come BTW, questo post non è sponsorizzato e non ho alcun coinvolgimento con TH3D oltre alla fornitura dei Power Blough-R. Non ho ricevuto nulla in più per l'inclusione di collegamenti a TH3D o è stato un articolo/video mai discusso come parte dell'accordo originale)

Fase 3: Contesto: il grande ordine

Contesto: il Grande Ordine
Contesto: il Grande Ordine
Contesto: il Grande Ordine
Contesto: il Grande Ordine

Ho venduto i Power Blough-R nel mio negozio Tindie, principalmente come kit. Ma per quelli che ho venduto assemblati, li proverei con un multimetro. In testerebbe una buona connessione tra l'ingresso e l'uscita di Ground, D- e D+ e che 5 V non erano collegati e testavano i ponti.

Questo richiedeva circa 30 secondi ed era molto incline a commettere errori se non stavo molto attento. Ma per la quantità di assemblati che vendevo, non era un grande impegno di tempo.

Ma ho pubblicato una foto del Power Blough-R sul sub reddit della stampa 3D e Tim di TH3DStudio.com mi ha contattato chiedendomi di ordinarne alcuni da immagazzinare nel suo negozio come prova. Ho detto sicuro e ho chiesto quanti ne stava cercando. Mi aspettavo che dicesse 10 o 20, ma ha detto che iniziamo con 100….

Sarebbe quasi impossibile per me testare con sicurezza 100 dispositivi con il multimetro, quindi sapevo che dovevo fare qualcosa al riguardo!

Passaggio 4: hardware

Hardware
Hardware

Ho optato per il modo più semplice in assoluto per assemblarlo perché ero un po' a corto di tempo! Era anche una build davvero economica (meno di ~ $ 5 per tutto).

  • Arduino Nano (questo ha una micro USB, ma va bene qualsiasi)*
  • Rottura del terminale a vite nano*
  • Uscita USB maschio*
  • Uscita USB femmina*
  • un po' di filo

Non c'è davvero molto per l'assemblaggio di questo. Saldare i pin dell'intestazione al nano se non lo sono già e inserirli nel breakout del terminale a vite.

5 fili devono essere saldati sui breakout USB maschio e femmina. Nota per il filo schermato, il breakout femmina non aveva un pad per questo, quindi l'ho saldato al lato del connettore. Questi cavi possono essere spelati all'altra estremità e avvitati nei terminali a vite (assicurarsi di lasciare un po' di gioco in modo che sia più facile collegare e scollegare i dispositivi)

Per il connettore maschio ho usato i seguenti pin

  • TERRA > 2
  • D+ > 3
  • D- > 4
  • VCC > 5
  • Scudo > 10

Per il connettore femmina ho usato:

  • TERRA > 6
  • D+ > 7
  • D- > 8
  • VCC > 9
  • Scudo > 11

*link di affiliazione

Passaggio 5: software

Software
Software

Prima di tutto dovrai scaricare l'IDE Arduino e configurarlo se non lo hai già.

Puoi prendere lo schizzo che ho usato dal mio Github e caricarlo sulla lavagna. Una volta fatto, sei a posto!

All'avvio, lo schizzo esegue una serie di test. Se tutti i test vengono superati, il LED integrato si accenderà. In caso di guasti, lampeggerà il LED integrato. Il dispositivo visualizzerà anche il motivo dell'errore sul monitor seriale, ma in realtà non utilizzo questa funzione.

Lo schizzo passa attraverso i seguenti test

Prova iniziale:

Questo serve per controllare che i pin femminili leggano come previsto ignorando i pin maschi. Vedi il passaggio sulla logica a tre stati per maggiori informazioni su questo.

Prova principale:

Questo test verifica che GND, D+, D- e Shield siano collegati mentre la linea 5V è bloccata. Questo per verificare la funzionalità principale del Power Blough-R, dove passa attraverso tutto ciò che non è la linea 5V.

Prova del ponte:

Questo controlla che nessuno dei pin sia collegato a ponte. Quindi passa attraverso ciascun pin, impostando la sua uscita e quindi controlla che tutti gli altri pin non siano interessati da questo.

Nei prossimi passaggi esaminerò alcune delle funzionalità/concetti utilizzati nei test.

Passaggio 6: INPUT_PULLUP

Questo è davvero utile in cui può farti risparmiare un resistore aggiuntivo (per pin) nel tuo progetto. È particolarmente utile quando si utilizzano i pulsanti.

Quando un pin è impostato su INPUT_PULLUP, sostanzialmente collega il pin a VCC con un resistore da 10k. Senza un resistore di pull-up (o pull-down), lo stato predefinito del pin è considerato flottante e si otterranno valori incoerenti quando si legge il pin. Essendo un valore piuttosto alto per un resistore, lo stato del pin è facilmente modificabile applicando un diverso livello logico al pin (ad esempio quando si preme il pulsante, collega il pin a massa e il pin leggerà LOW.

Ho impostato la modalità pin dei pin FEMMINA in modo che sia un INPUT_PULLUP, quindi ho un punto di riferimento su quale dovrebbe essere il pin (HIGH) purché non ci siano forze esterne su di esso. Durante i test, i pin MASCHIO sono stati impostati LOW e quando questi due dovrebbero essere collegati ci aspetteremmo che il pin FEMMINA sia LOW.

Passaggio 7: logica a tre stati

Image
Image

Per il test iniziale, volevo controllare il livello logico dei pin FEMMINA ignorando sostanzialmente i pin MASCHIO.

Questo può sembrare un problema perché i pin MALE dovrebbero avere un livello logico che avrebbe un impatto giusto?

Beh, in realtà i pin della maggior parte dei microcontrollori hanno la cosiddetta logica a tre stati, il che significa che hanno 3 stati in cui possono trovarsi: ALTA, BASSA e ALTA IMPEDENZA

L'ALTA IMPEDENZA si ottiene impostando il pin come INPUT. È l'equivalente di mettere un resistore da 100 Mega OHM davanti al pin, che lo scollegherà efficacemente dal nostro circuito.

La logica a tre stati è una delle caratteristiche principali di Charlie-plexing, che è una sorta di modo magico per indirizzare i singoli LED utilizzando un numero inferiore di pin. Guarda il video qui sopra se sei interessato a saperne di più su Charlie-plexing.

Passaggio 8: test del tester

Conclusione
Conclusione

Questo è in realtà un passaggio molto importante, perché se non si verifica che il tester rilevi scenari negativi, si può essere certi che quando il test è stato superato, il dispositivo funziona come previsto.

Se hai familiarità con i test di unità nello sviluppo del software, questo è l'equivalente della creazione di scenari di test negativi.

Per testare questo, ho creato un paio di schede con errori su di esse:

  • Saldare le intestazioni USB sul lato sbagliato della scheda. Le intestazioni USB si adatteranno bene, ma la linea di terra non sarà collegata e la linea 5V lo sarà. (purtroppo questo non è stato creato apposta, il che dimostra la necessità del tester!)
  • Due pin intenzionalmente collegati a ponte per testare il codice di test del ponte.

Passaggio 9: conclusione

Come ho detto all'inizio di questo articolo, questa è probabilmente la cosa più utile che ho costruito con un Arudino.

Dall'ordine originale, Tim ha ordinato altri 200 Power BLough-R e mentre il risparmio di tempo è molto apprezzato, la sicurezza che dà che il prodotto è perfettamente funzionante è la cosa principale che mi piace.

In effetti per l'ordine di 200, mia moglie ha praticamente fatto tutti i test su di essi. Le è piaciuto molto quanto fosse veloce da usare e quanto fosse semplice l'indicatore di superamento/fallimento.

Speriamo che ci sia qualcosa di utile da imparare da questa guida, se hai domande non esitare a chiedere qui sotto!

Ti auguro il meglio, Brian

  • Youtube
  • Tindi

Consigliato: