Sostituire il 18F2480 con un 18FXX31 su PJ3003-IT

13 Anni 2 Mesi fa #1 da Nevio
Ciao a tutti,

poichè vorrei fare qualche esperienza con dei pic 18FXX31,mi chiedevo se è possibile sostituire il pic nativo della scheda PJ3003-IT con uno della serie XX31 per poter utilizzare anche il modulo per la gestione in quadratura degli encoder.

Grazie Nevio

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

  • Nevio
  • New Member
  • New Member
Di più
13 Anni 2 Mesi fa #2 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: Sostituire il 18F2480 con un 18FXX31 su PJ3003-IT
Salve Nevio,

Il progetto PJ3003-IT (scheda per il controllo dei motori con microcontrollore) e´ nato con lo scopo di poter comandare due motori DC per mezzo del protocollo CAN. Infatti il PIC18F2480 possiede il CAN engine.
Lo scambio del PIC18Fxx80 puo´ essere fatto con il PIC18Fxx31, infatti i moduli PWM utilizzati nel controllo del ponte H sono quelli standard. In tale cambio pero´ perderai la possibilità di controllare il motore per mezzo del bus CAN.

Un´alternativa al bus CAN potrebbe essere il bus LIN, per il quale e´ necessario un transceiver esterno, ma ha il vantaggio di utilizzare la UART del PIC. Il bus LIN e´ per cosi dire una versione economica del bus CAN, viene utilizzato anche in ambiente Atomotive ma solo per le periferiche secondarie in cui non e´ associato un rischio sul controllo delle stesse.

La periferica QEI del PIC18Fxx31 e il modulo CAN non sono presenti in contemporanea nei PIC a 8 bit, mentre e´ possibile trovarle assieme nei PIC a 16 e 32 bit. La ragione per cui e´ possibile trovare i due moduli assieme e´ legata al fatto che i motori sono spesso integrati in sistemi in cui il controllo degli stessi avviene per mezzo del bus CAN, o meglio i telegrammi con i comandi di controllo sono inviati sul bus CAN.

Saluti,

Mauro

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

  • Mauro Laurenti
  • Avatar di Mauro Laurenti
  • Moderator
  • Moderator
Di più
13 Anni 2 Mesi fa - 13 Anni 2 Mesi fa #3 da Nevio

Mauro Laurenti ha scritto:
La periferica QEI del PIC18Fxx31 e il modulo CAN non sono presenti in contemporanea nei PIC a 8 bit, mentre e´ possibile trovarle assieme nei PIC a 16 e 32 bit.


Ciao,

presumo che i pic di classe superiore a cui ti riferisci siano i dsPic33 che di motori con relativo encoder ne gestiscono due....hai esperienza con questi pic?
La nuova scheda per il controllo motori che stai studiando utilizza i 18F o i dsPic?

Grazie

Nevio
Ultima Modifica 13 Anni 2 Mesi fa da Nevio.

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

  • Nevio
  • New Member
  • New Member
Di più
13 Anni 2 Mesi fa #4 da Gianni
Colgo al volo l'occasione per chiedere come funziona il modulo QEI. Voglio dire: vi si collegano gli encoder in quadratura, per cui immagino che tale modulo abbia una sorta di contatore per memorizzare velocità e verso, giusto? Tale modulo si interfaccia direttamente col PWM? E' possibile, cioè, impostare un valore di velocità costante da mantenere e il PWM viene regolato di conseguenza o è sempre necessario ricorrere a calcoli di PID via software per eseguire la correzione?

Sono tutti bravi ad essere "open" con il "source" degli altri.
Un amico è colui che ti dice sempre quando stai sbagliando. Il mio miglior amico è il parser.
SettoreZero

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

  • Gianni
  • Avatar di Gianni
  • Elite Member
  • Elite Member
Di più
13 Anni 2 Mesi fa #5 da Mauro Laurenti
Risposta da Mauro Laurenti al topic Re: Sostituire il 18F2480 con un 18FXX31 su PJ3003-IT
Ciao,

Si faccio effettivamente riferimento ai PIC24, PIC30, PIC33 (16 bit) e ai PIC32 (32 bit).
Devo dire che sono più esperto in PIC18 visto il libro che ho scritto e la scheda di sviluppo Freedom II che uso quasi giornalmente.

La nuova scheda per il controllo dei motori fa uso del PIC18F4431, al fine da rendere la programmazione della stessa più facile (essendo presente il libro C18 Step by Step come riferimento), in ogni modo non escludo che in futuro svilupperò anche delle schede con DSP...crescerò piano piano!

x Gianni,

Fondamentalmente la periferica QEI è un contatore, e controlla inoltre il valore degli ingressi (ovvero le uscite dell'encoder al fine di determinare il verso della rotazione. Il vantaggio della periferica QEI è che evita al PIC di essere sovraccaricato da interruzioni legate agli impulsi dell'encoder, soprattutto se si stanno utilizzando encoder di precisione (molti impulsi per giro). La periferica QEI possiede anche delle interruzioni dedicate per avvisare dello stato del movimento (verso rotazione, index) in particolare la periferica agevola il calcolo della velocità di rotazione. Conoscendo poi il diametro delle ruote risali alla velocità del robot.
...riguardo alla connessione QEI e PWM, non c'è nulla, sono periferiche indipendenti e il controllo della velocità, ovvero del PWM deve essere fatta per mezzo di un controllore PID o anche algoritmi più spartani.
Quale usare dipenderà dall'applicazione.

Saluti,

Mauro Laurenti

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

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

Registrati al sito

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

Registrati al sito LaurTec.

Login