Se sei già registrato           oppure    

Orario: 29/03/2024 07:20:46  

 

Energia Alternativa ed Energia Fai Da Te > Sezione Generica

Pagine: (2)   [1]   2    (Ultimo Msg)


Programmare PIC
FinePagina

Morzilla
KiloWatt


Gruppo:Utente
Messaggi:237

Stato:



Inviato il: 24/7/2010,08:01

Gente buongiorno! È disponibile un'anima pia in grado di indicarmi un tutorial/guida per iniziare a programmare (possibilmente in C e non in Assembler) i famigerati microcontrollori PIC? Mi servirebbe sapere soprattutto i vari registri di controllo delle porte, come leggere un input analogico da un piedino e variare il valore di uscita di un altro...per il momento ho trovato alcuni tutorial, ma sono solo per sviluppare programmi che effettuano determinate cose, non spiegano in generale il funzionamento dei PIC o come programmarli dalle fondamenta al tetto. Grazie mille! faccine/construction.gif

P.S. Avevo pensato di utilizzare come PIC il 16F628A, visto che è saltato fuori in varie altre discussioni...

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 24/7/2010,12:59

Ciao,
quel pic lo conosco bene forse meglio delle mie tasche...posso dirti che è meglio programmarlo in linguaggio macchina perchè 2kb sono pochini se si passa a programmarlo mediante altri linguaggi. Il tuo suggerimento è valido è da tempo che cerco di trovare tempo per fare qualcosa di utile a tutti...ma occorre cambiare processore...magari sfruttando anche la porta usb. Insomma se ci sono persone che seguiranno questa tua proposta...possiamo iniziare a fare qualcosa a bassissimo costo ....che comprende attuatori, sistemi di controllo e altro .
Ciao
Bolle



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 24/7/2010,18:43

stavo pensando... ma non esiste per caso un micro pc con linux, con una interfaccia a cui possano essere collegati relè e sensori vari?

e che consumi pochi watt al giorno ovviamente faccine/biggrin.gif
E che magari usi pure un linguaggio scripting per la gestione delle porte, relè, sensori....

lo chiedevo perchè in questo caso, programmare una supercentralina per qualsiasi uso sarebbe molto piu facile anche per me. faccine/biggrin.gif

Per esempio mi servirebbe qualche cosa che irrighi il campo con differenze in base alla temperatura, vento, umidità, pioggia, periodo dell'anno, pressione dell'acqua nelle tubature... tutte cose che le centraline non tengono in cosiderazione

ciao
MaX

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 25/7/2010,05:14

Vedo che le esigenze convergono...si esistono diversi sistemi ma spesso costosi.
L'obiettivo è realizzare qualcosa per tutti, veramente a basso costo e senza scopo di lucro...sicuramente l'intero progetto verrebbe riutilizzato e rivenduto altrove...ma fa parte del gioco. Sicuramente il consumo è ridicolo, la faccenda del linguaggio script non è male...ora ci penso...la mia idea era un'altra...ci penso oggi.
Ciao
Bolle



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 25/7/2010,10:40

per esempio si potrtebbe usare questo micro pc

www.koala.it/it/nanopc.htm

6 watt di consumo faccine/biggrin.gif

http://www.koala.it/images/nano-front.jpg

collegando via usb una interfaccia con vari relais e alcuni ingressi per temprature/pressioni/ecc si potrebbe ottenere una super centralina che fa tutto, domotica, irrigazione, allarme casa.

queste sono mie fantasie ovviamente, ma mi piacerebbe che fossero realizzabili

ciao,
MaX




Modificato da max_linux2000 - 25/7/2010, 12:12
 

Morzilla
KiloWatt


Gruppo:Utente
Messaggi:237

Stato:



Inviato il: 25/7/2010,11:16

@Max

Per pilotare dei relais, puoi fare come ho fatto io:

http://www.websterisk.org/images/relais.JPG

in pratica è una scheda con 8 relè, pilotabile tramite quella centralina USB da attaccare ad un PC o ad un terminale a basso consumo come questo:

http://www.websterisk.org/images/alix.JPG

(non fate caso alla polvere) che è il mio "server" casalingo: in pratica è un pc x86 in tutto e per tutto: monta un AMD Geode da 500MHz, 256Mb di RAM, ha la VGA, Audio, USB, Seriale e viene alimentata con una tensione di ingresso da 7-20V, è incredibilmente piccola (10x16cm) e fanless...si chiama Alix e viene prodotta dalla PC-Engines ( www.pcengines.ch/alix3d3.htm )...consuma circa 5W...in questo momento stà facendo girare una distro Debian tagliata ad-hoc, con Asterisk che mi funge da centralino VoIP (e un Webserver con una GUI che stò sviluppando io stesso per la configurazione e gestione di Asterisk), mi fa da Access Point e in più fa proprio quello che ti dicevo sopra...ho fatto un'interfaccia balocca che mi permette di gestire i vari relè della scheda:

http://www.websterisk.org/images/screen.png

Il tutto mi pare l'abbia pagato intorno ai 150€ (sia l'Alix che la scheda a relais)...ovviamente non sarà una centralina specific-purpouse, però è parecchio versatile, ci fai quello che vuoi e non cosuma nulla e i programmi li scrivi con il linguaggio che più ti piace (io ho usato il Perl per fare tutto), la puoi interfacciare con quello che ti pare (moduli GSM, Telecontrollo, Telefoni, telecomandi IR con LIRC e chi più ne ha più ne metta)...insomma...ci puoi fare tutto quello che ti passa per la testa...(ma questo è più un pregio di Linux che dell'Alix)

Non è che gli voglio fare pubblicità, è solo che mi ci sono trovato veramente bene...per quello che voglio fare però volevo proprio utilizzare una centralina specifica proprio per iniziare a programmare i famigerati PIC...

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 25/7/2010,11:25

cazzarola!!! faccine/biggrin.gif

ma allora già funziona!!

e per i sensori come si potrebbe fare? del tipo...esistono sensori usb o altro, per rilevare temperatura/umidità/pressione/voltaggi/ luce ecc? e tuuto quello che serve per fare una centrale domotica multi-porpouse?

ciao

 

Morzilla
KiloWatt


Gruppo:Utente
Messaggi:237

Stato:



Inviato il: 25/7/2010,11:52

Vediamo...ho trovato questo...ora controllo meglio che interessa pure a me...

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 25/7/2010,13:53

Vedo che ci prendete gusto....io lancio la proposta...si potrebbe fare un progettino mediante un pic (costo 5 Euro) il quale ha la possibilità di interfacciarsi con un pc USB dal quale carica un programma interpretato ( o tipo script), sempre mediante usb. Il pic può fungere in modalità autonoma ( ass meno di 1 W) o collegato al pc (non avrebbe bisogno di alimentazione). Il pic potebbe essere programmato in un semplice BASIC (EABASIC)...e si avvale di un compliatore che gira su pc il quale poi trasferisce il codice nel PIC (sempre da usb).
Si potrebbe con qualche riga di codice realizzare un crepuscolare , un sensore di temperatura ( potrebbe comunicare anche al pc i dati), un allarme, un attuatore o una centralina dove si possono inserire o disinserire i sensori ( ad esempio si può prevedere un orologio o un dispositivo wireless ma se non serve non si mettte) e tanto altro. Forse la cosa la sto facendo complicata...ma se mi date una mano (tipo scrivere documentazione o test) io parto!!!!Perchè tutto questo ? Perchè è a basso costo e fatto in casa.
Ci state?
Bolle



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 25/7/2010,14:44

CITAZIONE (NonSoloBolleDiAcqua @ 25/7/2010, 14:53)
Vedo che ci prendete gusto....io lancio la proposta...si potrebbe fare un progettino mediante un pic (costo 5 Euro) il quale ha la possibilità di interfacciarsi con un pc USB dal quale carica un programma interpretato ( o tipo script), sempre mediante usb. Il pic può fungere in modalità autonoma ( ass meno di 1 W) o collegato al pc (non avrebbe bisogno di alimentazione). Il pic potebbe essere programmato in un semplice BASIC (EABASIC)...e si avvale di un compliatore che gira su pc il quale poi trasferisce il codice nel PIC (sempre da usb).
Si potrebbe con qualche riga di codice realizzare un crepuscolare , un sensore di temperatura ( potrebbe comunicare anche al pc i dati), un allarme, un attuatore o una centralina dove si possono inserire o disinserire i sensori ( ad esempio si può prevedere un orologio o un dispositivo wireless ma se non serve non si mettte) e tanto altro. Forse la cosa la sto facendo complicata...ma se mi date una mano (tipo scrivere documentazione o test) io parto!!!!Perchè tutto questo ? Perchè è a basso costo e fatto in casa.
Ci state?
Bolle

Ciao bolle, mi sembra una buona idea, anzi una ottima idea. Io non posso contribuire nella costruzione, ma se il costo è sufficentemente abbordabile, posso comprare una scheda, quindi dovresti fare un preventivo, per poi testare il prodotto.

ho qualche remora riguardo l'eabasic, scommetto che funziona solo sotto windows faccine/sick.gif

Se si trova qualche cosa multipiattaforma e libero, posso partecipare volentieri.

Direi anche di aspettare un attimo per raccogliere le idee in modo da sentire cosa dicono gli altri.

ciao
MaX

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 25/7/2010,15:30

hahahahaha...preventivo...hhahahhahaha
max,
non mi sono spiegato...il costo deve essere ridicolo...di tutto quanto...altrimenti cosa stiamo facendo?
Mi spiego meglio...tutto nasce dal tuo suggerimento...è complicato a spiegarsi ma ora ci provo.
1.Realizzerò un sw che gira sotto windows...(dovrebbe girare anche sotto linux con emulatore) che si interfaccia alla usb.
2.Il sw compilerà un file di testo...il linguaggio sarà il basic ma si chiamerà EABASIC (Energia Alternativa Basic) le istruzioni saranno :
a. REM Commento
b. GOTO NLINEA -> Salto incondizionato al numero di linea NLINEA
c. INPUTS n -> Ritorna il valore del sensore n
d. PRINTPC -> Invia la stringa al PC connesso mediante porta USB
e. INPUTPC -> Torna una stringa in arrivo dal PC connesso mediante porta USB
f. IF CONDIZIONE THEN istruzione [ELSE istruzione]
g. OUT Val-> Forza le USCITE
h. INP -> Torna il valore degli ingressi
etc....
Un esempio di file sarà :
10 REM PRIMO ESEMPIO EABASIC...CREPUSCOLARE
15 PrintPC "SONO VIVO!"
20 A=INPUTS(1)
30 IF a > 78 then 50
35 OUT 0
40 goto 20
50 PrintPC "ACCENDO CREPUSCOLARE"
60 OUT 1
70 goto 20



3.se verrà compilato potrà essere trasferito sul pic mediante la porta usb ed eseguito...probabilmente metterò un emulatore...per verificarlo in locale...insomma una cosa seria ma a basso costo alla portata di tutti o quasi.


4. La scheda ( è un parolone...il chip) fungerà da sola oppure attaccata al pc(potrà comunicare mediante la porta usb...il pc potrà fare da display) ...sarà composta dal solo pic e tutti i sensori che saranno necessari...ad esempio in questo caso ci sarà una fotoresistenza...se faccessimo un termometro allora inseriremo anche quello...o entrambi ...insomma qualcosa di generico a basso costo e alla portata di tutti!!!
Spero di essere stato chiaro...l'aiuto serve per testare o scrivere documentazione.
Ciao
Bolle



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripetibile non esiste (by qqcreafis).

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 25/7/2010,16:01

direi perfetto... EABASIC!! faccine/biggrin.gif cmq sotto linux esistono vari basic anche evoluti e senza numeri di linea.
abbiamo anche un clone migliorato di visualbasic se è per questo...
cmq esistono programmatori pic anche per linux.

Ma lasciando perdere l'emulatore (che non mi può funzionare sotto powerpc) l'ideale sarebbe quello di essere indipendenti sia dal sistema operativo che dalla piattaforma hardware... il pc sta morendo lo sai no? faccine/biggrin.gif

cmq compilatori pic ne esistono per tutti i gustia quanto mi risulta:

picasm - Assembler for the Microchip PIC-family Microcontrollers
picp - command line utility to drive a PICSTART programmer
gpsim - Simulator for Microchip's PIC microcontrollers


ciao
MaX

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 25/7/2010,16:30

direi che piklab è una buona opzione.. funziona sotto windows,linux,osx, e sotto qualsiasi piattaforma hardware che supporti usb e seriali

http://piklab.sourceforge.net/screenshots.php


http://piklab.sourceforge.net/screenshots/piklab_asm_view.png

 

Sympalele
Watt


Gruppo:Utente
Messaggi:43

Stato:



Inviato il: 25/7/2010,19:05

CITAZIONE (NonSoloBolleDiAcqua @ 25/7/2010, 16:30)
1.Realizzerò un sw che gira sotto windows...(dovrebbe girare anche sotto linux con emulatore) che si interfaccia alla usb.


...insomma qualcosa di generico a basso costo e alla portata di tutti!!!
Spero di essere stato chiaro...l'aiuto serve per testare o scrivere documentazione.
Ciao
Bolle

Testare e documentazione, in più ho un canale con una importante rivista del settore.
Prendo sul serio un impegno così importante, scrivere un vero compilatore basic, qualsiasi sia il target o IDE usati è un lavoro da veri professionisti.

 

max_linux2000

Avatar
GigaWatt


Gruppo:Utente
Messaggi:2120

Stato:



Inviato il: 25/7/2010,19:23

in effetti questa potrebbe essere la centralina di controllo di cui fantasticavamo tempo fa, utile per la gestione dell'energia in una casa.

Utilissima per un contratto a fasce orarie o per non sovraccaricare un inverter, allarme, irrigazione domotica ecc.

Un sensore ad affetto hall in ingresso e la centrlina decide a che cosa dare priorità.


ciao
MaX

 
 InizioPagina
 

Pagine: (2)   [1]   2    (Ultimo Msg)

Versione Mobile!

Home page       TOP100-SOLAR      Home page forum