21 aprile 09, 21:39 | #1 (permalink) Top |
User 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) |
21 aprile 09, 21:57 | #2 (permalink) Top |
User 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. |
22 aprile 09, 11:42 | #3 (permalink) Top | |
User Data registr.: 28-05-2005 Residenza: Roma
Messaggi: 660
| Citazione:
| |
22 aprile 09, 15:09 | #4 (permalink) Top |
User 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...
__________________ ....... |
22 aprile 09, 19:26 | #5 (permalink) Top | |
User Data registr.: 16-11-2008 Residenza: Riva del Garda - TN
Messaggi: 429
| Citazione:
lol21 | |
22 aprile 09, 21:00 | #6 (permalink) Top |
User 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....
__________________ ....... |
22 aprile 09, 23:05 | #7 (permalink) Top | |
User 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:
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 | |
22 aprile 09, 23:53 | #8 (permalink) Top |
User 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...
__________________ ....... |
23 aprile 09, 22:49 | #9 (permalink) Top |
User 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. |
23 aprile 09, 23:14 | #10 (permalink) Top | |
User Data registr.: 16-11-2008 Residenza: Riva del Garda - TN
Messaggi: 429
| Citazione:
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 | |
Bookmarks |
| |
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 |