MECCANICA e DINTORNI
http://meccanicaedintorni.morpel.it/phpbb/

motorizzare la vite madre del bv 20
http://meccanicaedintorni.morpel.it/phpbb/viewtopic.php?f=94&t=25995
Pagina 2 di 5

Autore:  CARLINO [ mar nov 12, 2019 14:24 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Cinghietta dentata naturalmente ; ce ne sono anche di quelle larghe pochi mm tipo quelle delle stampanti.

Autore:  cicos154 [ mar nov 12, 2019 19:33 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Ho montato il jostick sulla scheda arduino uno , ho eseguite le dovute saldature e collegato il display lcd per provarlo,inserisco le foto.

Autore:  cicos154 [ mer nov 13, 2019 14:57 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Salve,devo modificare lo sketch 1.51 per aggiornare il display 20x4 con I2C e forse anche altri parametri
Sono riuscito a modificare uno sketch preso su internet che era per display 16x2 i2c e farlo funzionare col mio che è 20x4 con i2c.
Non oso modificare quello di Max,perché ci sono tanti valori da cambiare: il display con i2c ,poi il bv20 non ha avanzamento automatico del trasversale e la scatola norton, e non saprei da dove cominciare. Aggiungo l'immagine dei collegamenti che ho copiato senza collegare il quinto filo(blu) e nelle prove funzionava anche così.
incollo sketch:

#include <LiquidCrystal_I2C.h>
#define LED_PIN 11

LiquidCrystal_I2C lcd(0x27, 20, 4);

String riga1 = "Display LCD con";
String riga2 = "interfaccia I2C";
String riga3 = "benvenuto";
String riga4 = "prova display";
void setup(){w


lcd.init();
lcd.backlight();
pinMode(LED_PIN, OUTPUT);
analogWrite(LED_PIN, 50);
}

void loop(){
lcd.clear();
lcd.setCursor(0, 0);
typewriting(riga1);
lcd.setCursor(0, 1);
typewriting(riga2);
lcd.setCursor(0, 2);
typewriting(riga3);
lcd.setCursor(0, 3);
typewriting(riga4);
lcd.setCursor(0, 4);


delay(1000);
}

void typewriting(String messaggio){
int lunghezza = messaggio.length();
for(int i = 0; i < lunghezza; i++){
lcd.print(messaggio[i]);
delay(150);
}
}

Autore:  McMax [ gio nov 14, 2019 07:57 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Per il display I2C c'è una libreria apposta che usa gli stessi comandi di quella che ho usato io. Basta cambiare libreria e riassegnare i pins. Non devi modificare nulla nello sketch, solo l'intestazione, i Pin e l'inizializzazione della libreria....

Autore:  cicos154 [ gio nov 14, 2019 08:09 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Ciao, la libreria come si chiama e dove la scarico? devo usare "gestione librerie di arduino" ? va bene "LCD03"?
i pin sono A4 E A5? giusto? oltre ai 2 della alimentazione gnd e +5v naturalmente
cosa devo scrivere per l'intestazione?
Scusami ma con arduino sono alle prime armi e per quanto legga e provo non sempre ottengo buoni risultati ,quindi per favore aiutami tu che sei molto bravo,grazie

Autore:  McMax [ gio nov 14, 2019 22:45 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Non l'ho mai usata quindi certezze non posso dartene. Io userei la LiquidCrystal I2C; i comandi dovrebbero essere gli stessi, ma poiché faccio un uso abbastanza complesso delle stringhe non garantisco che la cosa funzioni senza intoppi.
Lo sketch l'ho scritto usando un LCD parallelo quindi sarebbe stato meglio usare quello, soprattutto se sei alle prime armi.
Si i pins sono A4(SDA) e A5(SCL). Sono mappati anche sull'altro connettore, dopo il ground ed in particolare gli ultimi 2 in fondo (virtualmente pin 16 e 17)

Io proverei inizialmente a modificare il codice così (ti metto solo le parti che devi modificare, con // prima della vecchia istruzione che ovviamente non va più eseguita:
Codice:
//#include <LiquidCrystal.h>  //include la libreria di controllo del display LCD
#include <Wire.h> //include la libreria di gestione delle porte seriali, inclusa I2C
#include <LiquidCrystal_I2C.h>


Codice:
// initialize the LCD library with the references of the interface pins
//LiquidCrystal lcd(LCD_RS, LCD_RW, LCD_EN, LCD_D4, LCD_D5, LCD_D6, LCD_D7); //inizializza LCD
LiquidCrystal_I2C lcd(0x27,20,4);


Codice:
void setup()
{
  //lcd.begin(20, 4);
  lcd.init();
  lcd.print("Electronic LeadScrew");


eventualmente (ma è solo una questione estetica) puoi anche eliminare tutte le assegnazioni dei pins del LCD, queste:

Codice:
//#define LCD_RS   A2    //LCD RS pin
//#define LCD_RW   A3    //LCD RW pin
//#define LCD_EN   A4    //LCD enable pin
//#define LCD_D4   10    //LCD D4 pin
//#define LCD_D5   11    //LCD D5 pin
//#define LCD_D6   12    //LCD D6 pin
//#define LCD_D7   13    //LCD D7 pin


Prova e dimmi se funziona....

Autore:  cicos154 [ ven nov 15, 2019 22:10 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Ciao,ho inserito le modifiche del codice da te gentilmente suggerite e mi dà errore sù "lcd init(); allego cattura schermo.

Ho notato che manca la parentesi grafa di chiusura,la devo mettere?

grazie infinite per l'aiuto

Marcello

Autore:  umbez [ ven nov 15, 2019 23:39 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Che versione di libreria hai installato?
Il compilatore dice che stai usando un metodo privato, bisogna vedere la versione di libreria che stai usando

Autore:  cicos154 [ sab nov 16, 2019 10:48 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Ciao umbez,la libreria l'ho scaricata da qui :https://bitbucket.org/fmalpartida/new-liquidcrystal/downloads/

la versione è :libreria "newLiquidCrystal 1.51",rinominata "LiquidCrystal ",forse ho sbagliato a rinominarla?

P.S. :quella allegata è l'immagine dell'ultimo sketch che ho usato per provare la libreria che ho citato sopra e il display funziona benissimo. sia sui pin A4 eA5 sia se uso Sda e SCL sulla scheda arduino uno rev 3.

Ho allegato anche lo sketch,ma con estesione txt(perche è vietato dal forum inserire file ino),da rinominare per arduino con estensione ino per poterlo aprire.
Per poter vedere e cambiare l'estensione di un file è necessario avere attivato sul PC "mostra estensione file"

Autore:  umbez [ sab nov 16, 2019 13:58 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

perchè come ti dicevo la libreria che hai usato ha il metodo init private, infatti nel primo sketch hai usato lcd.init ==> errore , nel secondo lcd.begin ==> funziona

togli lcd.init e metti lcd.begin(20,4) e dovrebbe funzionare.

ciao

Autore:  cicos154 [ sab nov 16, 2019 14:44 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

ok,provo subito,grazie
PS
Ho provato ed ora ho un errore in "velocità mandrino"

Autore:  umbez [ sab nov 16, 2019 16:10 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Puoi provare ad utilizzare questa libreria?
https://github.com/johnrickman/LiquidCrystal_I2C
Dovrebbe essere quella che indicava max, la tua non ha quel metodo

Autore:  McMax [ sab nov 16, 2019 16:11 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

la libreria che ti ho indicato io (LiquidCrystal I2C) la scarichi direttamente dall'IDE arduino e te la installa automaticamente.
Vai su strumenti ==> gestione librerie ==> cercala e installala.

Poi ripeto, dal momento che sei poco pratico, non era meglio prendere un LCD parallelo e usare lo sketch originale ?

Autore:  cicos154 [ sab nov 16, 2019 19:21 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Max,col senno del poi ti dò pienamente ragione.
Per quello che costano ne acquisto uno a 16 pin parallelo.e risolvo la situazione senza tanti sbattimenti.
Avevo preso questo perché non dovevo fare saldature ,ma ora che sono meglio organizzato non sarà difficile eseguirle.

Autore:  umbez [ sab nov 16, 2019 20:45 ]
Oggetto del messaggio:  Re: motorizzare la vite madre del bv 20

Perché vuoi cambiare? Usa la libreria che ti ha indicato max e funzionerà secondo me. Non mollare!!

Pagina 2 di 5 Tutti gli orari sono UTC +1 ora
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/