| Morzilla
| 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!
P.S. Avevo pensato di utilizzare come PIC il 16F628A, visto che è saltato fuori in varie altre discussioni...
| | | | NonSoloBolleDiA...
| 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 è ripet...
| | | | max_linux2000
| 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 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.
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
| | | | NonSoloBolleDiA...
| 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 è ripet...
| | | | max_linux2000
| 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
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
| Inviato il: 25/7/2010,11:16
|
@Max
Per pilotare dei relais, puoi fare come ho fatto io:
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:
(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:
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
| Inviato il: 25/7/2010,11:25
|
cazzarola!!!
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
| Inviato il: 25/7/2010,11:52
|
Vediamo...ho trovato questo...ora controllo meglio che interessa pure a me...
| | | | NonSoloBolleDiA...
| 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 è ripet...
| | | | max_linux2000
| 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
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
| | | | NonSoloBolleDiA...
| 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 è ripet...
| | | | max_linux2000
| Inviato il: 25/7/2010,16:01
|
direi perfetto... EABASIC!! 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?
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
| | | | | | | Sympalele
| 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
| 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
| |
| | |
|
Versione Completa!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|