Torna indietro   BaroneRosso.it - Forum Modellismo > Elettronica > Circuiti Elettronici


Rispondi
 
Strumenti discussione Visualizzazione
Vecchio 21 aprile 09, 21:39   #1 (permalink)  Top
User
 
L'avatar di lol21
 
Data registr.: 16-11-2008
Residenza: Riva del Garda - TN
Messaggi: 429
voglio avventurarmi nell'elettronica

ciao a tutti, sono il classico rompi....e che vuole avventurarsi nei circuiti stampati.
allora, come primo progetto volevo già fare un qualcosa di complesso:
un PIC16F631 collegato a 3 sensori IR, 2 sensori di tocco e 2 motori. in pratica la funzione sarebbe quella di creare un robot, che possa schivare gli oggetti. i sensori IR calcorerebbero la distanza ai lati e sul davanti del robot, mentre i sensori di tocco servirebbero in caso gli IR fallissero.

è possibile? (anche se tutto è possibile, basta pagare)

appena l'avrò finito posterò il diagramma con i controlli e la sorgente in C del programma (per la sorgente ho letto guide su guide e già programmo in PHP, il linguaggio è simile)

grazie
lol21
(aspirante elettronico)
lol21 non è collegato   Rispondi citando
Vecchio 21 aprile 09, 21:57   #2 (permalink)  Top
User
 
L'avatar di marco78
 
Data registr.: 07-02-2001
Messaggi: 342
io mi ci sto avventurando e spero di non aver già fatto naufragio, ma a differenza tua sto cercando di fare una scheda per la cnc
__________________
___________________________________
Velocità, quota, culo.
Bisogna averne sempre due a piacere.
marco78 non è collegato   Rispondi citando
Vecchio 22 aprile 09, 11:42   #3 (permalink)  Top
User
 
Data registr.: 28-05-2005
Residenza: Roma
Messaggi: 660
Citazione:
Originalmente inviato da lol21 Visualizza messaggio
ciao a tutti, sono il classico rompi....e che vuole avventurarsi nei circuiti stampati.
allora, come primo progetto volevo già fare un qualcosa di complesso:
un PIC16F631 collegato a 3 sensori IR, 2 sensori di tocco e 2 motori. in pratica la funzione sarebbe quella di creare un robot, che possa schivare gli oggetti. i sensori IR calcorerebbero la distanza ai lati e sul davanti del robot, mentre i sensori di tocco servirebbero in caso gli IR fallissero.

è possibile? (anche se tutto è possibile, basta pagare)

appena l'avrò finito posterò il diagramma con i controlli e la sorgente in C del programma (per la sorgente ho letto guide su guide e già programmo in PHP, il linguaggio è simile)

grazie
lol21
(aspirante elettronico)
Se ti stai avventurando per la prima volta nell'elettronica e vuoi cominciare con i PIC allora sei ancora in tempo per studiarti l'assembler per PIC e comincia con il far lampeggiare un led e non con sensori di prossimità all'infrarosso, scarica il datasheet del PIC che ti interessa e leggitelo per bene da cima in fondo, soprattutto la parte che riguarda la descrizione delle istruzioni.
SoldatoSemplice non è collegato   Rispondi citando
Vecchio 22 aprile 09, 15:09   #4 (permalink)  Top
User
 
L'avatar di illez
 
Data registr.: 06-08-2007
Residenza: Empoli
Messaggi: 1.813
Beh'....
E' un po' una forzatura dire che il PHP è simile al C, per giunta alla versione per microcontrollori...

Che compilatore usi?
Hai studiato un minimo i PIC?
Hai idea di come funzionino?
Sai cos'è un interrupt?
Sai come programmarli?

E ancora:
Che sensori vuoi usare per la distanza?
Che motori userai?
Come intendi pilotarli?


Fatti qualche domanda e dacci qualche risposta...
__________________
.......
illez non è collegato   Rispondi citando
Vecchio 22 aprile 09, 19:26   #5 (permalink)  Top
User
 
L'avatar di lol21
 
Data registr.: 16-11-2008
Residenza: Riva del Garda - TN
Messaggi: 429
Citazione:
Originalmente inviato da illez Visualizza messaggio
Beh'....
E' un po' una forzatura dire che il PHP è simile al C, mah... sarà che avevo anche fatto un po' di c++ un po' di tempo fa, ma il PHP è molto simile, in fondo i cicli (while, for, ecc...) sono gli stessi, ad ogni fine istruzione viene sempre messo il ; per me sono molto simili
per giunta alla versione per microcontrollori... implementa la PHP una classe e vedi che anche lì hai variabili predefinite, ma anche di standard ($_SESSION[], $_GET[], $_POST[], ...)

Che compilatore usi? al momento ne stò cercando uno
Hai studiato un minimo i PIC? ho letto molto, poi la pratica è un'altra cosa
Hai idea di come funzionino? abbastanza..
Sai cos'è un interrupt? su questo effettivamente non ho risposta
Sai come programmarli? ci vuole un programmatore, sapere il linguaggio, compilarle il sorgente e spostare il file .HEX nel pic

E ancora:
Che sensori vuoi usare per la distanza? io pensavo questo: .: Robot Italy WebSite:. : Sensore Infrarosso Sharp IS471F [300002] - 3,60EUR con questo led: .: Robot Italy WebSite:. : LED Infrarosso ad alta efficienza da 940nm [390001] - 0,60EUR
Che motori userai? ora sto pensando ai motori passo-passo poichè ho visto che i motori quelli da modellismo non trovo nessuna guida per farli andare bene.
Come intendi pilotarli? il robot andrà sempre dritto appena schiaccio un pulsante, poi quando lo rischiaccio si ferma, se invece intendevi come farli andare, ho visto questa guida: Lezione 5


Fatti qualche domanda e dacci qualche risposta...
ciao, grazie della risposta (e delle domande)
lol21
lol21 non è collegato   Rispondi citando
Vecchio 22 aprile 09, 21:00   #6 (permalink)  Top
User
 
L'avatar di illez
 
Data registr.: 06-08-2007
Residenza: Empoli
Messaggi: 1.813
Per risponderti:
La sintassi del PHP è simile al C (come del resto molti altri linguaggi), ma sono due cose completamente diverse. Il PHP è un linguaggio ad ALTO livello, il C a basso. Il PHP è interpretato, il C è compliato. E via dicendo.

"implementa la PHP una classe e vedi che anche lì hai variabili predefinite, ma anche di standard ($_SESSION[], $_GET[], $_POST[], ...)"

In questo momento non mi viene in mente nessuna variabilepredefinita del C, e nemmeno standard... salvo eccezioni in qualche implementazione.
Forse delle #define derivanti da qualche #include, ma non altro.

Che compilatore usi? al momento ne stò cercando uno
Hai studiato un minimo i PIC? ho letto molto, poi la pratica è un'altra cosa
Hai idea di come funzionino? abbastanza..
Sai cos'è un interrupt? su questo effettivamente non ho risposta

Da quest'ultima risposta capisco che NON HAI LETTO abbastanza
Leggi ancora, se non sai cos'è un interrupt non sai come funziona un microprocessore. E saranno pochi i programmi che potrai fare senza un intelligente uso degli interrupt.

Sui sensori, io inizierei con qualcosa di più semplice da pilotare che ti possa dare già la distanza... lo SHARP SRF05

Inizia con dei motori normali, sono più semplici.

Come intendi pilotarli? il robot andrà sempre dritto appena schiaccio un pulsante, poi quando lo rischiaccio si ferma, se invece intendevi come farli andare, ho visto questa guida: Lezione 5

Intendevo dire come piloti i motori: cerca cos'è un ponte H.

Studia e chiedi....
__________________
.......
illez non è collegato   Rispondi citando
Vecchio 22 aprile 09, 23:05   #7 (permalink)  Top
User
 
L'avatar di lol21
 
Data registr.: 16-11-2008
Residenza: Riva del Garda - TN
Messaggi: 429
inanzitutto grazie per le risposte, poi...
allora ho cercato gli interrupt e wikipedia mi ha "detto" che è un tipo particolare di istruzione della CPU che consente l'interruzione del processo in determinate condizioni.
ma non ho ben capito cosa intendevi con
Citazione:
E saranno pochi i programmi che potrai fare senza un intelligente uso degli interrupt.


ho cercato anche il ponte H ed ho capito meglio degli interrupt, in pratica è un modo si scambiare il lato positivo e negativo del motore: ho trovato uno schemino (visto che non mi sono espresso bene)


in pratica se chiudo il circuito in:
A e D = motore gira in un senso
C e B = motore gira dall'altra
A e B = il motore frena

ma se ho capito bene in pratica dovrei utilizzare dei relè?

dimmi se ho capito..

e scusate se vi sto facendo perdere tempo

ciao
lol21
lol21 non è collegato   Rispondi citando
Vecchio 22 aprile 09, 23:53   #8 (permalink)  Top
User
 
L'avatar di illez
 
Data registr.: 06-08-2007
Residenza: Empoli
Messaggi: 1.813
Per il ponte H e il driver dei motori potresti iniziare qui e da quella pagina esplorare il sito, per esempio.
L'interrupt è, proprio come dice la parola, una interruzione: il microcontrollore smette di eseguire il flusso del programma principale per eseguire una funzione dedicata alla sua gestione.
L'interruzione può arrivare quando si verificano certi eventi; ad esempio, il timer interno del microcontrollore arriva a 0, il segnale su un piedino passa da 0 a 1 o viceversa. Ogni PIC ha i suoi quindi ti DEVI studiare il suo datasheet.
Perché sono nati: non voglio entrare nella storia dei microprocessori (che tra l'altro non conosco così approfonditamente), ma per farti capire a cosa servono, pensa ad una periferica che deve comunicare dati al tuo computer. Quando è pronta a trasmettere genera un interrupt e il PC passa ad ascoltarla...
Pensa al tuo robottino che gira tranquillamente per la casa e ad un certo punto va a sbattere contro la gamba della sedia che, stranamente , il tuo sensore ad ultrasuoni non ha rilevato. Il tuo microswitch si chiude, il segnale su un piedino cambia, il tuo interrupt ferma o fa cambiare direzione al tuo mezzo...
__________________
.......
illez non è collegato   Rispondi citando
Vecchio 23 aprile 09, 22:49   #9 (permalink)  Top
User
 
L'avatar di rivp6
 
Data registr.: 11-10-2004
Residenza: out of Verona
Messaggi: 573
senza nulla togliere alle tue capacità di programmazione, voglio solo indicarti alcune piccole cose.

1) la programmazione di un microcontrollore, sia Pic, atmel o altro, non può prescindere dalla capacità di leggere e comprendere un datasheet, quindi conoscenze di hardware, assembler etc.

2) se non sai cosa vuol dire interrupt, ti mancano le conoscenze di base per intrprendere questa strada, quindi comincia dal basso, e vediamo se riesci a fare lampeggiare un led.

3) quando usi un PIC, basta un bit errato nei registri che non funziona un tubo. e tieni presente, che se non compri un debugger serio, non capirai mai perchè il sw non funziona. non è come su pc che ti viene fuori la finestrella "runtime error xxx"

4) quindi prima di iniziare con sensori IR, che lavorano in IC2bus o altro, domandati se conosci il protocollo con cui lavorano questi sensori. a differenza dei programmi PC, un millisecondo in più o meno cambia molto

5) se vuoi ottenere dei risultati, devi procurarti un ambiente di sviluppo hardware consolidato, vedi mikroe.com, ad esempio

riguardo al fatto che sai usare PHP etc (e le tue dichiarazioni confermano una certa confusione sui linguaggi di programmazione) ovviamente non sei un professionista ... il mondo è pieno di persone che usando VB o PHP o si reputano programmatori... C è una filosofia e non ha eguali in altri linguaggi.


se però hai domande concrete sullo sviluppo su microcontrollori, chiedi pure.
rivp6 non è collegato   Rispondi citando
Vecchio 23 aprile 09, 23:14   #10 (permalink)  Top
User
 
L'avatar di lol21
 
Data registr.: 16-11-2008
Residenza: Riva del Garda - TN
Messaggi: 429
Citazione:
Originalmente inviato da rivp6 Visualizza messaggio
senza nulla togliere alle tue capacità di programmazione, voglio solo indicarti alcune piccole cose.

1) la programmazione di un microcontrollore, sia Pic, atmel o altro, non può prescindere dalla capacità di leggere e comprendere un datasheet, quindi conoscenze di hardware, assembler etc.

2) se non sai cosa vuol dire interrupt, ti mancano le conoscenze di base per intrprendere questa strada, quindi comincia dal basso, e vediamo se riesci a fare lampeggiare un led.

3) quando usi un PIC, basta un bit errato nei registri che non funziona un tubo. e tieni presente, che se non compri un debugger serio, non capirai mai perchè il sw non funziona. non è come su pc che ti viene fuori la finestrella "runtime error xxx"

4) quindi prima di iniziare con sensori IR, che lavorano in IC2bus o altro, domandati se conosci il protocollo con cui lavorano questi sensori. a differenza dei programmi PC, un millisecondo in più o meno cambia molto

5) se vuoi ottenere dei risultati, devi procurarti un ambiente di sviluppo hardware consolidato, vedi mikroe.com, ad esempio

riguardo al fatto che sai usare PHP etc (e le tue dichiarazioni confermano una certa confusione sui linguaggi di programmazione) ovviamente non sei un professionista ... il mondo è pieno di persone che usando VB o PHP o si reputano programmatori... C è una filosofia e non ha eguali in altri linguaggi.


se però hai domande concrete sullo sviluppo su microcontrollori, chiedi pure.
inanzitutto grazie per l'indirizzo del compilatore, ne stavo cercando uno buono e mi hai dato un buon indirizzo.

poi...
io so benissimo che non arriverò mai ai livelli di fare un sito commerciale professionale col PHP ma un siterello ancora ancor ce la faccio e so anche di non riuscire ad arrivare ai livelli di creare un umanoide completo coi PIC sotto ogni aspetto. so ance che ogni singolo carattere nella programmazione ogni singola posizione di quel carattere può compromettere l'intero programma.

poi.. ora infatti vado un po' per gradi, inizierò a far lampeggiare un led e poi passerò e farli accendere con dei pulsanti, poi passerò al controllo dei motori, dopo arrivo ai sensori e poi posso completare il tutto. il progetto per me non è una cosa sola, ma l'insieme di tante funzioni, di istruzioni, di interrupt e molto altro. questo progetto, per esempio, è un insieme di:
controllo LED (stato dei motori)
controllo motori (farlo andare avanti/indietro/curvare)
controllo sensori (i sensori di rilevamento appunto)

se lo si vede così, per me il progetto è diverso

detto questo
'notte
lol21
lol21 non è collegato   Rispondi citando
Rispondi

Bookmarks




Regole di scrittura
Non puoi creare nuove discussioni
Non puoi rispondere alle discussioni
Non puoi inserire allegati
Non puoi modificare i tuoi messaggi

BB code è Attivato
Le faccine sono Attivato
Il codice [IMG] è Attivato
Il codice HTML è Disattivato
Trackbacks è Disattivato
Pingbacks è Disattivato
Refbacks è Disattivato


Discussioni simili
Discussione Autore discussione Forum Commenti Ultimo Commento
Voglio farlo.... f.alberto Aeromodellismo Volo Elettrico 11 06 dicembre 08 21:42
voglio l'easyyy Zolle Aeromodellismo Alianti 1 18 febbraio 06 12:08
lo voglio!!!!!!!!! topa Aeromodellismo 8 11 aprile 05 19:53



Tutti gli orari sono GMT +2. Adesso sono le 15:23.


Basato su: vBulletin versione 3.8.11
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
E' vietata la riproduzione, anche solo in parte, di contenuti e grafica. Copyright 1998/2019 - K-Bits P.I. 09395831002