Progetto didattico con PIC e PC connessi

13 Anni 1 Mese fa #1 da RedHerryk
Progetto didattico con PIC e PC connessi è stato creato da RedHerryk
Salve a tutti,
sono una new entry del sito in cerca di tutti i consigli possibili, quindi vi ringrazio gia dal pricipio per ogni vostro contributo. :cheer:

Sto cercando di sviluppare in maniera più consona un progetto che ho realizzato 2 anni fa, con alla base una scheda I\O della velleman 8055 con PIC gia programmato e gestita tramite un programma in C++ con tanto di supervisione grafica. Dovrei spostare la programmazione su di un PIC e farlo interagire tramite USB, ethernet, Xbee, wifii o al massimo RS232 con il programma che ho sviluppato (provvedero ovviamente ad apportare tutte le modifiche necessarie).

Riassumendo:
sto cercando la soluzione migliore con una o più schede con PIC serie 18F..... che si
possa collegare in ethernet o differentemente ad un Pc su cui utilizzerei un programma in visual C che ho gia realizzato e modifichero al caso (eviterei altri linguaggi ma se propio non sarà possibile vedrò se riesco ad adeguarmi :unsure: ) per permettermi la visualizzazione di ingressi analogici e digitali e il comando sia di uscite analogiche, digitali che di servi.
Premetto che devo imparare ad usare ad usare i differenti canali di comunicazione sia lato PIC che Pc, ma con esempi e qualche valanga di dritte :whistle: dovrei riuscire modificare o realizzare il software del PIC per permettere il funzionamento autonomo anche a Pc scollegato.
Mi servirebbero il maggior numero di ingressi-uscite o che si possano ampliare con un port estender o differentemente (i2C, CAN, UART, RS), quindi se mi consigliate anche su questo fronte sarebbe meglio.
Dovrebbe arrivarmi settimana prossima il programmatore pickit3 della microchip con demoboard (monta un PIC PIC18F45K20), ma alla vista della FreedomII e EasyUSB con schede di espansione sono un pò pentito. :(

Ogni problema ha almeno due soluzioni:

Una semplice e una complessa.

Indovinate voi quale funziona ;)

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • RedHerryk
  • Avatar di RedHerryk
  • New Member
  • New Member
Di più
13 Anni 1 Mese fa #2 da gcupini
Risposta da gcupini al topic Re: Progetto didattico con PIC e PC connessi
Ciao,

Se non capisco male tra le tue tante richieste (forse troppe) ci sono le seguenti cose:
1) Devi far comunicare un PC con un PIC sei incerto sul sistema di comunicazione più opportuno per scambiare dati e comandi
2) Ti chiedi se i PIC consentano di risolvere il tuo problema programmando in C
3) Sei incerto se costruire una tua scheda per il PIC o adottare la EasyBus e la FreedomII di Laurenti.

Se ho male interpretato ti prego di scusarmi e se vuoi di correggermi.

Se ho almeno in parte colto le tue esigenze allora ti rispondo così:
punto 1 : devi chiarire se la comunicazione è wireless o con filo. Citi vari sistemi e protocolli assieme ad Xbee che è un sistema radio ricetrasmettente.
Punto 2 : i PIC non hanno problemi ad essere programmati in C per risolvere i tuoi problemi di comunicazione sia con il C per PIC18 che col C HITECH.
Punto 3 : non conosco esattamente le caratteristiche del PIC18F45K20 ma penso non sia molto diverso dal PIC10F4550 o PIC18F45K22 che ho usato. Le sua caratteristiche mi sembrano adatte al problema di comunicazione che hai. Io ho usato, sia per l'apprendimento che per una mia applicazione, le Schede di Laurenti che hai citato.Sia la Freedom II che la EasyBus sono ottime e ti risparmiano, almeno nell'immediato, un sacco di lavoro. In futuro poi si può tutto migliorare e rifare.
Buon lavoro

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • gcupini
  • Visitatori
  • Visitatori
13 Anni 1 Mese fa #3 da RedHerryk
Risposta da RedHerryk al topic Re: Progetto didattico con PIC e PC connessi
Scusa se ho messo tanta carne al fuoco contemporaneamente, ma volevo riassumere tutto in una sola richiesta.
Purtroppo ho poco tempo per preparare il progetto e devo renderlo funzionante utilizzando un programma su PIC per integrare il progetto su base elettronica-elettrotecnica al precedente su sola base informatica.
Attualmente sono alla fase di scelta delle migliori soluzioni che mi permettano di combinare cio che avevo gia fatto (supervisione su PC in linguaggio C++), per la comunicazione in USB con la scheda di campo I/O (piuttosto limitati) della Velleman utilizzavo delle DLL fornitemi e quindi penso non riutilizzabili con altri PIC (non ho il programma del PIC sulla scheda Velleman) da programmare.
Punterei in primis a scegliere una soluzione semplice e eventualmente gia provata, da modificare ad hoc per il progetto gia realizzato (plastico e funzionalità), passando poi all'incremento delle funzionalità via via che preparo nuove relise dei programmi Pc e PIC. Tutto dipende dal tempo che riesco a dedicargli tra lavoro, studio, familia e ovviamente una pennichella prima che sorga il sole. :(
Tra il supervisore Pc (in C++) e il PIC devo far passare una stringa di dati in entrambi i sensi, sostanzialmente mi serve poter leggere e scrivere da Pc in alcune aree di memoria del PIC che continuera a processare il programma in esso caricato tenendo conto della variazione dell'area di memoria scritta dal Pc e riscrivendo in lo stato attuale degli I/O o dei altri dati nell'area di memoria letta da Pc.
Se possibile (variabile tempo :side: ) vorrei implementare la comunicazione con altri PIC per aumentare i limiti del sistema e renderlo modulare utilizzando un port estender o differentemente i2C, CAN, UART o RS (ovviamente se trovo qualche esempio il lavoro si svolge con più semplicità). ;)
L'utilizzo di cominicazione ethernet, Xbee o wifii tra Pc e PIC permetterebbe più modularità a livello di supervisione lasciando le funzionalità di base gestite dai singoli PIC master.

Ogni problema ha almeno due soluzioni:

Una semplice e una complessa.

Indovinate voi quale funziona ;)

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • RedHerryk
  • Avatar di RedHerryk
  • New Member
  • New Member
Di più
13 Anni 1 Mese fa #4 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: Progetto didattico con PIC e PC connessi
Ciao,

effettivamente la carne sulla brace e' molta e bisognerà definire un po' meglio le specifiche.

Probabilmente per comunicare con PC puoi usare la porta USB emulata in RS232 in maniera da tenere il software lato PC più semplice. Non escludo che la scheda velleman di cui parli emuli la porta seriale.
Usando la porta USB hai anche il vantaggio della modularità offerta dagli HUB USB e di avere un progetto moderno.

Per vedere come usare la porta USB emulata come porta seriale puoi far riferimento al seguente Tutorial:

Leggere e scrivere dati via USB

Non so poi se la scheda deve comandare periferiche lontane o vicine. La porta USB ti permette di andare a circa 5m di distanza ed usando exender attivi puoi arrivare a 10-15m. altrimenti devi usare una comunicazione anche tra il modulo USB e i nodi di comando (per esempio usando l'interfaccia RS485 abbinata al modulo seriale UART del PIC). il protocollo CAN ti prenderà più tempo per il suo utilizzo quindi lo escluderei.

Se devi leggere e scrivere nelle vicinanze del PIC puoi usare anche il bus I2C.

nel seguente post ho rilasciato una libreria per comandare l'I/O exender PCF8574:

Libreria C18 PCF8574 (I2C I/O exender)

Ci sono anche integrati analoghi per estendere il numero di ADC (la libreria potrebbe essere riadattata con poche modifiche).

Saluti,

Mauro
Ringraziano per il messaggio: RedHerryk

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
Moderatori: Mauro Laurenti

Registrati al sito

Accedi a tutte le risorse e articoli non visibili pubblicamente, puoi registrarti con pochi passi.

Registrati al sito LaurTec.

Login