• Benvenuti su RaspberryItaly!
Benvenuto ospite! Login Login con Facebook Registrati Login with Facebook


Valutazione discussione:
  • 0 voto(i) - 0 media
  • 1
  • 2
  • 3
  • 4
  • 5

[-]
Tags
drive motor programmare

[Problema] Programmare motor drive
#1
Buongiorno a tutti, visto che mi sto costruendo un roller per movimentare una tank di sviluppo lastre fotografiche avrei necessità , mediante un motor drive , di  un motore tipo questo, questo motore dovrebbe fare dei cicli tipo: 
Totale tempo 7 min.
per il primo minuto agitazione avanti-indietro continua
per i successivi 6 minuti agitazione avanti-indietro per i primi 10 sec. di ogni minuto.

Spero di essere stato chiaro Cool  

Secondo voi è fattibile con il Raspy ?

Grazie
Risposta
#2
Fattibile? Si, con una scheda dirver di controllo motori. Per scegliere quella più adatta, bisognerebbe sapere l'assorbimento massimo, in corrente, del motore.
La programmazione non è complicata, se usi Python e gpiozero (tutorial di esempio)

Questo economico driver va bene fino a 2A

schema di esempio
[Immagine: Raspberry-Pi-L298N-Motor-Driver-Module-I...ircuit.jpg]
Risposta
#3
Grazie !!!! @zzed , volevo ancora chiederti, si potrebbe inserire un display LCD che mi indichi lo stop (magari un buzzer) e la sequenza (n. operazione in corso) ? Perché stiamo parlando di una sessione di sviluppo fotografico che comprende Prelavaggio-sviluppo-arresto-fissaggio-lavaggio finale, tutte operazioni distinte che hanno tempi e modi diversi di svolgimento ....

Per la potenza nelle caratteristiche mi dice la nominale che è 0,5A
Risposta
#4
Si può fare tutto quel che si vuole. Il limite, è la fantasia. Se è dotato di connessione può avvisarti su Telegram quando ha finito, ad esempio.
Per dovere di cronaca, si può fare anche con un microcontrollore.
Risposta
#5
(07/06/2021, 22:07)Zzed Ha scritto: Si può fare tutto quel che si vuole. Il limite, è la fantasia. Se è dotato di connessione può avvisarti su Telegram quando ha finito, ad esempio.
Per dovere di cronaca, si può fare anche con un microcontrollore.
Si dovrebbe prendere il wifi in garage, dove ho la camera oscura, ma comunque io sarei presente quindi terrei sotto controllo, devo solo capire come programmarlo....
Risposta
#6
descrivi il ciclo tipico, si può abbozzare una canovaccio di programma.
Risposta
#7
Grazie dell'aiuto @Zzerd ti descrivo cosa devo fare

Sono più cicli, tra un ciclo e l'altro devo scaricare il contenitore e cambiare il tipo di chimico all'interno...

  • Prelavaggio: 1 minuto rotazione continua (inversione di marcia ogni 10 sec.)
  • Sviluppo: 8 minuti totali  ( 30 sec. rotazione continua con inversione di marcia a 15 sec.), dal secondo minuto rotazione continua per 10 sec. con inversione a 5 sec. poi fermo fino al terzo minuto e poi la sequenza si ripete fino allo scadere dell'ottavo minuto. 
     
  • Arresto: 1 minuto totale  ( 60 sec. rotazione continua con inversione di marcia  ogni 15 sec.).
  • Fissaggio: 5 minuti totali  ( 30 sec. rotazione continua con inversione di marcia a 15 sec.), dal secondo minuto rotazione continua per 10 sec. con inversione a 5 sec. poi fermo fino al terzo minuto e poi la sequenza si ripete fino allo scadere del quinto minuto.
  • Lavaggio finale: 6 rotazioni (3+3 inverso) stop-scarico , 10 rotazioni (5+5 inverse) stop-scarico, 20 rotazioni (5+5+5+5 inverse) stop-scarico, 40 rotazioni (5+5+5+5+5+5+5+5 inverse) stop-scarico, 20 rotazioni (5+5+5+5 inverse) stop-scarico.
Ti ho anche dato due info sulla fotografia argentica....... spero di non averti creato confusione.
Grazie ancora per tutto.
Risposta
#8
in effetti un po' mi son confuso.

Qui le indicazioni su come usare la scheda di controllo motori

Ma un semplice esempio in Python potrebbe essere


Codice:
# importo le librerie
from gpiozero import Motor, Button, Buzzer
from time import sleep

# impostazioni
motore = Motor(forward=4, backward=14)  # Pin 4 collegato al pin avanti del driver motore, pin 14 collegato al pin indietro
pulsante = Button(2) # pulsante collegato tra il pin 2 e GND
cicalino = Buzzer(3) # cicalino collegato tra il pin 3 e GND

# programma cicli
pulsante.wait_for_press()  # attende che il pulsante venga premuto prima di proseguire

print ("Prelavaggio")  # scrive il nome della fase (prelavaggio)
for x in range(3):    # ripeti 3 volte il blocco rientrati
    motore.forward()    # motore avanti
    sleep(10)          # attendi 10 secondi
    motore.backward()  # motore indietro
    sleep(10)          # attendi 10 secondi
   
motore.stop()          # ferma il motore
cicalino.beep()        # fai beep beep
print ("Prelavaggio terminato") # scrivi che hai finito
sleep(1)              # aspetta un secondo
cicalino.off          # ferma il cicalino
   
pulsante.wait_for_press()  # attende che il pulsante venga premuto prima di proseguire

print ("Sviluppo")
# ehh niente, qui gia mi son perso con i tempi... spero però tu abbia capito il concetto
#
#
#  .......... 


una volta affinato il funzionamento si possono sostituire le scritte a schermo facendole scrivere su un display (il come dipende dal tipo di display, non pensiamoci per ora)
Risposta
#9
Caspita @Zzed spero non mi farai la fattura .... Big Grin, intanto cerco di capire qualcosa di ciò che hai scritto, poi sicuramente ti farò alcune domande, per quanto riguarda il Motor drive  avevo pensato a questo cosa ne pensi ?
Grazie ancora
Risposta
#10
Non preoccuparti, qui lo spirito è darsi una mano, e cercare di scambiarsi nozioni e conoscenze. Non è che il canovaccio di un programma, magari non elegantissimo, ma funzionale. Te lo ho commentato a scopo didattico. Ovviamente i pindel GPIO puoi usare quelli che preferisci.
Si, il dirver è esattamente quello che ti ho linkato io, solo che su Amazon costa il triplo  Big Grin
Risposta
  


Vai al forum:


Navigazione: 1 Ospite(i)
Forum con nuovi Post
Forum senza nuovi post
Forum bloccato
Forum Redirect