Potenziometri, Motore Passo Passo e delay, HELP

Ciao a tutti ragazzi, sto lavorando a un idea di slider per la Telecamera motorizzato ma mi trovo bloccato ora che mi sono arrivati i potenziometri, ecco subito la configurazione hardware:

Allora con un codice pulito tipo questo sotto riesco a far girare benissimo il motore:

int delaylegnth = 30;

void setup() {
  
  //establish motor direction toggle pins
  pinMode(12, OUTPUT); //CH A -- HIGH = forwards and LOW = backwards???
  pinMode(13, OUTPUT); //CH B -- HIGH = forwards and LOW = backwards???
  
  //establish motor brake pins
  pinMode(9, OUTPUT); //brake (disable) CH A
  pinMode(8, OUTPUT); //brake (disable) CH B


  
  
}

void loop(){
 
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);

}

quindi ho cercato di implementarlo con due potnziometri, uno che regolasse il delay tra uno step e l'altro e uno che regolasse la direzione.
come vedete dal codice sotto che sto cercando di far andare dal potenziometro collegato in A3 prendo il valore e lo divido per 30 perchè ho bisogno di una tolleranza nel scegliere il delay.
L'altro potenziometro collegato in A2 mi decide la direzione infatti se il valore è <= di 513 fa eseguire il codice che gira verso SX, se è > gira verso DX.

int analogPin = 3; //collego il potenziometro della velocità a pin A3
int analogPin2 = 2; //collegoil potenziometro della direzione a pin A2
int analread = analogRead(analogPin/30);
int analread2 = analogRead(analogPin2);
int delaylegnth = analread;
int rotazione = analread2;


void setup() {
  
  //establish motor direction toggle pins
  pinMode(12, OUTPUT); //CH A -- HIGH = forwards and LOW = backwards???
  pinMode(13, OUTPUT); //CH B -- HIGH = forwards and LOW = backwards???
  
  //establish motor brake pins
  pinMode(9, OUTPUT); //brake (disable) CH A
  pinMode(8, OUTPUT); //brake (disable) CH B
    


  //sketch completato SLIDER MOTORIZZATO arduino
  
}

void loop(){
  
  
  if (rotazione <= 511)  // va a dx se rotazione ==100
  {
 
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  }
 
   if (rotazione > 511)  // va a sx se rotazione ==0
  {
    digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
 }

}

collego tutto , provo e restano le lucette accese, anche se stacco i potenziometri continua un fischietto del motore continuo..
Vi ringrazio se riuscite ad aiutarmi, sono alle prime armi.

non riesco proprio a farlo andare, anche perchè il delay standard sarebbe = 30, cosi ho fatto si che la cifra che legge in analog che va da 0 a 1023 dividendo per 30 va da 0 a 34 in questo modo riuscirei a regolare molto bene la velocità del motore

??? le analogRead le devi fare nella loop() non in dichiarazione:

int analread = analogRead(analogPin/30);
int analread2 = analogRead(analogPin2);

nid69ita:
??? le analogRead le devi fare nella loop() non in dichiarazione:

int analread = analogRead(analogPin/30);

int analread2 = analogRead(analogPin2);

perdonami, provo a modificare ora vedo :smiley: grazie intanto, ti tengo aggiornato

nid69ita:
??? le analogRead le devi fare nella loop() non in dichiarazione:

int analread = analogRead(analogPin/30);

int analread2 = analogRead(analogPin2);

Niente da fare, situazione uguale con tutto bloccato
ecco il codice nuovo:

#include <LiquidCrystal.h>


int analogPin = 3; //collego il potenziometro della velocità a pin A3
int analogPin2 = 2; //collegoil potenziometro della direzione a pin A2
int analread;
int analread2;
int delaylegnth = analread;
int rotazione = analread2;



void setup() {
  
  //establish motor direction toggle pins
  pinMode(12, OUTPUT); //CH A -- HIGH = forwards and LOW = backwards???
  pinMode(13, OUTPUT); //CH B -- HIGH = forwards and LOW = backwards???
  
  //establish motor brake pins
  pinMode(9, OUTPUT); //brake (disable) CH A
  pinMode(8, OUTPUT); //brake (disable) CH B
    


  //sketch completato SLIDER MOTORIZZATO arduino
  
}

void loop(){
  int analread = analogRead(analogPin/30);
  int analread2 = analogRead(analogPin2);
  
  
  
  if (rotazione <= 511)  // va a dx se rotazione ==100
  {
 
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  }
 
   if (rotazione > 511)  // va a sx se rotazione ==0
  {
    digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
 }

}

focamonca:
int analogPin = 3; //collego il potenziometro della velocità a pin A3
...
void loop(){
int analread = analogRead(analogPin/30);

Stai chiedendo ad Arduino, leggi dal pin numero 3/30 ovvero 0
Forse volevi scrivere così:

int analread = analogRead(analogPin)/30;

leggi da pin analogico 3 (ma sarebbe meglio scrivere A3) e poi il valore letto lo dividi per 30

ciao
all'interno del loop hai messo :

if (rotazione <= 511)  // va a dx se rotazione ==100

e

if (rotazione > 511)  // va a sx se rotazione ==0

peccato che la variabile rotazione non la leggi e non la aggiorni MAI
infatti come ti ha già detto nid69ita:

??? le analogRead le devi fare nella loop() non in dichiarazione:

poi:

int analogPin = 3; //collego il potenziometro della velocità a pin A3

qui hai dichiarato il pin 3 NON il pin A3, inoltre:
int analread = analogRead(analogPin/30); :fearful: :fearful:
... stai leggendo il pin ( analogPin/30) ovvero 3/30 ovvero 0,1 ?????
Rileggi con calma ti tuo codice e cerca di capire quello che hai scritto.

p.s. altri errori non te li dico.... :stuck_out_tongue:

ciao
pippo72

edit: @nid69 mi hai anticipato di 31 secondi...

mi manca solo un passo ora, come si aggiornano le variabili?
scusate ma ho fatto l'anno scorso solo un esame di Java e quello che apprendo devo capirlo da solo

gente, ho "corretto il codice così":

int analogPin = A3; //collego il potenziometro della velocità a pin A3
int analogPin2 = A2; //collegoil potenziometro della direzione a pin A2
int analread;
int analread2;
int delaylegnth = analread;
int rotazione = analread2;



void setup() {
  
  //establish motor direction toggle pins
  pinMode(12, OUTPUT); //CH A -- HIGH = forwards and LOW = backwards???
  pinMode(13, OUTPUT); //CH B -- HIGH = forwards and LOW = backwards???
  
  //establish motor brake pins
  pinMode(9, OUTPUT); //brake (disable) CH A
  pinMode(8, OUTPUT); //brake (disable) CH B
    



  //sketch completato SLIDER MOTORIZZATO arduino
  
}

void loop(){
  
  
analread = analogRead(analogPin)/30;
analread2 = analogRead(analogPin2)

  
  
  
  if (rotazione <= 511)  // va a dx se rotazione <=511
  {
 
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  }
 
   if (rotazione > 511)  // va a sx se rotazione >511
  {
    digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
 }

}

e ottengo il seguente errore:

sketch_may28b.ino: In function 'void loop()':
sketch_may28b:39: error: expected `;' before 'if'
int analread = analogRead(analogPin/30);
int analread2 = analogRead(analogPin2);

oltre quello giá detto:
Devi leggere il valore nel loop() senó non puoi mai regolare qualcosa.
Non so se la lettura fuori dalle funzioni setup() o loop() funziona

Ciao Uwe

cristo ragazzi non ho afferrato il concetto, come faccio a fare refresh della variabile? cosa non va nell'ultimo codice?

l'errore è banale:

analread2 = analogRead(analogPin2)

manca il punto e virgola! :wink:

Ho corretto il punto e virgola ma siamo ancora in quella situazione di lucette tutte accese e fischietto del motore con questo codice:

int analogPin = A3; //collego il potenziometro della velocità a pin A3
int analogPin2 = A2; //collegoil potenziometro della direzione a pin A2
int analread;
int analread2;
int delaylegnth = analread;
int rotazione = analread2;



void setup() {
  
  //establish motor direction toggle pins
  pinMode(12, OUTPUT); //CH A -- HIGH = forwards and LOW = backwards???
  pinMode(13, OUTPUT); //CH B -- HIGH = forwards and LOW = backwards???
  
  //establish motor brake pins
  pinMode(9, OUTPUT); //brake (disable) CH A
  pinMode(8, OUTPUT); //brake (disable) CH B
    



  //sketch completato SLIDER MOTORIZZATO arduino
  
}

void loop(){
  
  
analread = analogRead(analogPin)/30;
analread2 = analogRead(analogPin2);

  
  
  
  if (rotazione <= 511)  // va a dx se rotazione <=511
  {
 
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  }
 
   if (rotazione > 511)  // va a sx se rotazione >511
  {
    digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
 }

}
void loop(){
analread = analogRead(analogPin)/30;
analread2 = analogRead(analogPin2);

if (rotazione <= 511)  // va a dx se rotazione <=511

il problema (uno dei tanti... :P) stà qua:
a questo punto arduino del fatto che tu gli abbia detto nel void setup che rotazione = analread2 non glie ne può fregare di meno.
cambia con:

analread = analogRead(analogPin)/30;
rotazione = analogRead(analogPin2); //<==== riga cambiata

if (rotazione <= 511)  // va a dx se rotazione <=511

ecco di nuovo tutto il codice ed ecco ancora la stessa situazione di stallo

int analogPin = A3; //collego il potenziometro della velocità a pin A3
int analogPin2 = A2; //collegoil potenziometro della direzione a pin A2
int delaylegnth;
int rotazione;




void setup() {
  
  //establish motor direction toggle pins
  pinMode(12, OUTPUT); //CH A -- HIGH = forwards and LOW = backwards???
  pinMode(13, OUTPUT); //CH B -- HIGH = forwards and LOW = backwards???
  
  //establish motor brake pins
  pinMode(9, OUTPUT); //brake (disable) CH A
  pinMode(8, OUTPUT); //brake (disable) CH B
    



  //sketch completato SLIDER MOTORIZZATO arduino
  
}

void loop(){
  
  
delaylegnth = analogRead(analogPin)/30;
rotazione = analogRead(analogPin2);

if (rotazione <= 511)  // va a dx se rotazione <=511
  {
 
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  }
 
   if (rotazione > 511)  // va a sx se rotazione >511
  {
    digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, HIGH);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
  
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, HIGH);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
  
  digitalWrite(9, LOW);  //ENABLE CH A
  digitalWrite(8, HIGH); //DISABLE CH B

  digitalWrite(12, LOW);   //Sets direction of CH A
  analogWrite(3, 255);   //Moves CH A
  
  delay(delaylegnth);
    
  digitalWrite(9, HIGH);  //DISABLE CH A
  digitalWrite(8, LOW); //ENABLE CH B

  digitalWrite(13, LOW);   //Sets direction of CH B
  analogWrite(11, 255);   //Moves CH B
  
  delay(delaylegnth);
 }

}

Nel codice che ti funziona, quello senza potenziometri, avevi fissato il delaylenght=30
Qui tu stai facendo il valore letto dal potenziometro /30
Il valore letto è tra 0-1023. Sei sicuro del calcolo ?

Dopo questo:

delaylegnth = analogRead(analogPin)/30;
rotazione = analogRead(analogPin2);

Prova a "forzare" le 2 variabili:

delaylegnth = 30;
rotazione = 600;

Quindi non "senti" più i potenziometri e perciò il programma dovrebbe funzionare perchè esegui lo stesso codice di prima.
Se non funziona allora non è solo problema di codice ma di come hai collegato i potenziometri.

comincia ad usare il monitor seriale per vedere che valori leggi:
all'interno sel void setup:

....
delay(1000);
Serial.begin(9600);
...

all'interno del loop:

void loop(){
  
delaylegnth = analogRead(analogPin)/30;
delaylegnth = analogRead(analogPin)/30;
rotazione = analogRead(analogPin2);
rotazione = analogRead(analogPin2);

Serial.print(F("delaylegnth = "));
Serial.print(delaylegnth);
Serial.print(F("  rotazione = "));
Serial.println(rotazione);

if (rotazione <= 511)  // va a dx se rotazione <=511
  {

fai partire il codice, apri la seriale sull'IDE di arduino (regola se serve la velocità di trasmissione) e vedi che valori leggi.

ciao
pippo72

P.S. la doppia lettura NON è un refuso di copia-incolla...

pippo72:
comincia ad usare il monitor seriale per vedere che valori leggi:
all'interno sel void setup:

....

delay(1000);
Serial.begin(9600);
...



all'interno del loop:


void loop(){
 
delaylegnth = analogRead(analogPin)/30;
delaylegnth = analogRead(analogPin)/30;
rotazione = analogRead(analogPin2);
rotazione = analogRead(analogPin2);

Serial.print(F("delaylegnth = "));
Serial.print(delaylegnth);
Serial.print(F("  rotazione = "));
Serial.println(rotazione);

if (rotazione <= 511)  // va a dx se rotazione <=511
  {



fai partire il codice, apri la seriale sull'IDE di arduino (regola se serve la velocità di trasmissione) e vedi che valori leggi.

ciao
pippo72

P.S. la doppia lettura NON è un refuso di copia-incolla...

ciao pippo, delusione, non leggo nulla :frowning: il monitor seriale resta bianco

non cambia niente per il codice, ma se devi leggere lo stato orario/antiorario perchè non usi un interruttore invece di un trimmer?

tapirinho:
non cambia niente per il codice, ma se devi leggere lo stato orario/antiorario perchè non usi un interruttore invece di un trimmer?

per il semplice motivo che esteticamente e funzionalmente lo preferisco cosi :slight_smile:
il concreto problema è che non gira proprio