Domotica voor de pic in eigen huis

Hallo mede co'ers.

Ik heb al wat langer de gedachten om mijn kamer als eerste te voorzien van een pic installatie.

Het volgende heb ik in gedachten.

Verschillende pic modules die allemaal aan de uart of een communicatie middel hangen, een hoofd pic die alles registreerd en mijn acties waar kan maken.

Hiermee bedoel ik.

Als je in mijn kamer een schakelaar in drukt gaat er een bepaalde code naar de master pic.
De master pic bekijkt dan wat waar bij hoort en aan de hand van mijn instellingen kan ik bepalen wat er moet gebeuren, of er een lamp aan moet of misschien een timer moet lopen.

Dit wilde ik doen met een triac zodat ik die aan de pic kan koppelen.
Of met een relais.

Mijn vraag wat is wel en wat is niet veilig? van mijn ouders zou ik dit wel mogen mits het veilig is.
Het voordeel van een relais is dat het gescheiden is. zo ook als een opto-coupler.

Heeft iemand hier ideeën en uitleg voor?
Ik zou graag wat ideeën willen en willen weten wat wel en wat juist niet veilig is.

Ik wil een 4 aderige kabel langs mijn bestaande bekabeling leggen (230V)
En die kabel gaat langs alle schakelaars en lampen die ik heb hangen en vervolgens naar 1 punt zodat ik de master pic er aan kan hangen, kan ik storing krijgen door het net op mijn uart of is dit wel veilig?
Hoe ver kan uart door een kabel komen of hoe hard zijn de verliezen etc.
Een aparte 5V voeding voor de pic's die ook op me kamer staat.

Dit zou ik graag willen weten.

Andere ideeën zijn ook altijd welkom!

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt

Om met het laatste te beginnen: de lengte die je met een RS232-verbinding foutloos kan overbruggen hangt uiteraard af van de aanwezigheid van stoorbronnen e.d. maar ook van de baudrate. Op zolder hangt hier ergens een ATmega32, die op 9600bd communiceert met een Epia-bordje. Dat werkt foutloos, ook al zit de (afgeschermde) RS232-kabel samen met netspanningsdraden in dezelfde kabelgoot. Ik gok op een kabellengte van 7 á 8m.

Als de communicatie tussen 2 PIC's geschiedt, kan je op TTL-niveau (0V/5V) blijven werken. Dat spaart je een boel kosten en moeite (geen MAX232 oid. nodig), maar de betrouwbaarheid kan te wensen overlaten.
Je vermeld een 4-aderige kabel. Denkelijk 2 voedingsdraden en 2 RS232-draden. Als die kabel vrij lang is, kan het volgende gebeuren:

De PIC op het uiteinde neemt plots een piekstroom op (hij schakelt iets ofzo). De ohmse en/of de inductieve weerstand van de voedingsleidingen spelen "hindernisje" bij het doorgeven van de benodigde stroom. Daardoor vindt een niveauverschuiving plaats tussen GND en TXD/RXD, hetgeen de UART in de war brengt. Enz...

Een "echte" RS232-verbinding heeft daar minder last van, omdat ze met positieven en negatieve signalen werkt, en alles tussen +3V en -3V negeert.

Om te weten hoever en/of hoe snel je kan gaan, kan je zelf uittesten. Geen mens op CO kan dat in je plaats doen.

Wat het schakelen van netgevoede apparaten betreft: begin niet met triacs te stunten! Ze zijn goedkoop, maar dat is zowat hun enige voordeel. Je hebt absoluut een galvanische scheiding nodig. Dus komt er nog een MOCxxx en wat klein grut bij kijken.
Bij de geringste kortsluiting (een 25W-lampje waarbij de gloeispiraal doorbrandt en even "rare" dingen doet) is het de triac die er eerst de brui aan geeft.
Het kan erger: een slechte dimensionering, waarbij de triac enkel de positieve spanning doorlaat naar een... trafo-gevoedt apparaat. Daar heb ik --lang geleden-- een printer mee gemold.

Kortom: schakel netgevoede apparaten met een (SS-)relais. Voor de extra euro's die je moet neertellen, ga je maar vacantiewerk doen. :-)

Prosper, yop la boum, c'est le roi du macadam (aldus Maurice Chevalier)
bprosman

Golden Member

Waarom willen mensen toch altijd het wiel voor de 88e keer uitvinden |:-( . Waarom geen RS485 wat zich al in diverse (domotica) bussen bewezen heeft , aardig storingsongevoelig is. Protocol dr op met wat foutafhandeling, springen dr ook geen dingen per ongeluk aan of uit, kun je met wat Googlen zo kunt vinden. Ik zou inderdaad gaan voor de relais optie.

Ik wil een 4 aderige kabel langs mijn bestaande bekabeling leggen (230V)

NEN1010 is voor mij al 25 jaar geleden maar "vroegah" mocht je dat niet in de zelfde buis/goot (zonder tussenschotten) leggen.

Groeten, Bram

De jongere generatie loopt veel te vaak zijn PIC achterna.

Op 26 juli 2008 20:57:25 schreef bprosman:
Waarom willen mensen toch altijd het wiel voor de 88e keer uitvinden |:-( . Waarom geen RS485 wat zich al in diverse (domotica) bussen bewezen heeft , aardig storingsongevoelig is.

Om de eenvoudige reden, dat de doorsnee-PC helemaal geen RS485-connector heeft.

Prosper, yop la boum, c'est le roi du macadam (aldus Maurice Chevalier)
bprosman

Golden Member

Om de eenvoudige reden, dat de doorsnee-PC helemaal geen RS485-connector heeft.

Dus als Mohammed niet naar de berg kan moet de berg maar naar Mohammed ? :-(. Waarom zou je een storingsgevoelige(re) bus maken door je hele huis alleen omdat je PC dit niet heeft ?. Bovendien, wat is er op tegen de "Master" met RS232 uit te rusten en de lange(re) afstanden met RS485 te doen ?

een hoofd pic die alles registreerd en mijn acties waar kan maken.

Groeten, Bram

De jongere generatie loopt veel te vaak zijn PIC achterna.

bedankt voor de nuttige informatie!

Ik had gezien dat frits op zijn website wel een triac gebruikt heeft vandaar die vraag.
Zelf dacht ik aan een relais of een solid state relais.
Vakantie werk heb ik al en daarom doe ik het ook ;)

Ik wil dat het veilig blijft en dat het goed blijft werken.
Ik heb geen max232 nodig ik communiceer op uart en maak geen gebruik van een computer maar van een hoofd pic zoals ik dat noem, die zitten met de lijnen aan elkaar gekoppeld.

Het probleem wat je noemt van het uitvallen van de pic omdat ik iets schakel is toch op de lossen met een goede voeding en een mooi elco op de voedingslijn?

Ik weet zelf niet hoe storings vrij uart is.

Ik weet niet over welke communicatie de pic nog meer beschikt maar goed alles is te leren, sta overal open voor.

uart heb ik zelf al eens geprobeerd en het werkt goed maar was maar om te testen op een breadbordje.

Je noemt ook de term, MOC ? heb er geen ervaring mee en weet zelf ook niet echt wat het is.
Kan zijn dat ik het wel eens gezien heb maar de naam zegt me zo niks.
EDIT: Weet het al was te snel, gewoon galvanische scheiding

Als je een solid state relais gebruikt is het geheel al gescheiden en kan er in preciepe niks meer gebeuren, dan zou een opto coupler toch overbodig zijn?

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt

Waarom zou je een storingsgevoelige(re) bus maken door je hele huis alleen omdat je PC dit niet heeft?

Ik hou hier geen pleidooi voor RS232, hoor! Maar RS232 ligt nu eenmaal meer voor de hand. En bijgevolg blijven mensen het gebruiken.

Vergelijk het maar met dat OS uit Redmond, dat bij merk-PC's wordt meegeleverd, en dat storingsgevoeliger is dan de BASIC-interpreter van m'n ZX81.

Prosper, yop la boum, c'est le roi du macadam (aldus Maurice Chevalier)
bprosman

Golden Member

Hoe ga je dan meerdere "slaves" aansturen met RS232 (centrale pic)?
Dat kan alleen als je een "fire-and-forget" protocol gebruikt.

Groeten, Bram

De jongere generatie loopt veel te vaak zijn PIC achterna.

Op 26 juli 2008 21:30:59 schreef Lithium:
Je noemt ook de term, MOC ? heb er geen ervaring mee en weet zelf ook niet echt wat het is.

Een MOCxxxx is een opto-triacdriver.
Van deze zijn er ook weer verschillende versies. Sommigen schakelen op de null-doorgang anderen niet.
Mocht je dit willen gebruiken raad ik je aan een MOC te nemen die op de null-doorgang schakelt, zodat je aangesloten apps niet op de volle sinus ingeschakeld kunnen worden.
Datasheet van de MOC3043 (zero-cross): http://pdf1.alldatasheet.com/datasheet-pdf/view/53875/FAIRCHILD/MOC304…

Op 26 juli 2008 21:30:59 schreef Lithium:
Ik had gezien dat frits op zijn website wel een triac gebruikt heeft vandaar die vraag.

Dan gaat het wel om een schakeling die volkomen zelfstandig werkt. Frits plaatst daar dan ook de nodige waarschuwingen bij.

Het probleem wat je noemt van het uitvallen van de pic omdat ik iets schakel is toch op de lossen met een goede voeding en een mooi elco op de voedingslijn?

Nee, dat is niet zo eenvoudig. Je hebt 2 voedingsleidingen (GND en +5V of meer). GND is het referentiepunt voor de RS232-lijn. Als de schakeling aan het eind van de lijn plots meer stroom opneemt, zal die elco dat deels opvangen. Edoch, de GND zal iets stijgen en Vcc zal iets zakken. Als je me toestaat te overdrijven, kan dit betekenen dat het referentiepunt v/d RS232-lijnen (die worden immers niet belast) voldoende omhoog "wipt" om van een "nul" een "een" te maken voor de master-PIC.

Ik weet zelf niet hoe storings vrij uart is.

Test het uit. Draai meters kabel om de vaatwasser, de luster, de TV, het hoorapparaat van opa, de brommer van je broer, enz.
Gebruik een duidelijk protocol voor de communicatie ("PIC7: Lamp ON\n") en laat de slaaf duidelijk reageren ("PIC7: Lamp is ON\n"). Laat de master foutmeldingen registreren en doormelden naar een PC.
Kortom: zoek het zelf uit (niet onvriendelijk bedoeld).

Je noemt ook de term, MOC ? heb er geen ervaring mee en weet zelf ook niet echt wat het is.

D'r bestaan meerdere MOC's, maar meestal zijn het opto-triac's die een galvanische scheiding vormen tussen een sturing en een triac die met de netspanning verbonden is.
Sommigen schakelen enkel tijdens (of kort na) de nuldoorgang, hetgeen ontstorings-componenten zo goed als overbodig maakt.

Als je een solid state relais gebruikt is het geheel al gescheiden en kan er in preciepe niks meer gebeuren, dan zou een opto coupler toch overbodig zijn?

Yep! Iedem met een traditioneel relais.

@bprosman: als alle slaves op "enkel luisteren" ingesteld staan, kan de slave die zich aangesproken voelt zijn TXD-pin activeren en een reply sturen.
Of dat foutloos gaat werken, hangt grotendeels van de software af...

Prosper, yop la boum, c'est le roi du macadam (aldus Maurice Chevalier)

Als je nog een geschikte bus aan het zoeken bent, kijk dan ook eens naar de CAN bus.

Ik had zelf in gedachten, elke module, met module bedoel ik dan elk printje die iets aan kan sturen of die een signaal afgeeft een wachtwoord te geven, het wachtwoord is het zetzelfde als zijn serial als ware.

Dus geen enkele pic kan erop reageren.
Dan koppel ik standaard functies aan een waarde zodat het duidelijk en goed werkt.

Ik snap dat ik dingen zelf uit moet testen en proberen, misschien zijn er ook mensen die er reeds al ervaring mee hebben zoals u dat aan mij vertelt, ik lees dit met veel plezier omdat ik er wat van kan leren snapt u.

Over het storen met de voeding, denk dat dit deels wel opgelost kan worden om bij elke pic een condensator op de 5V te zetten en bij me voeding, dit moet wel wat schelen, ik wil bovendien ook een pc voeding gaan gebruiken.

Ik zou dus op zoek moeten gaan naar goede solid state relias, liefst heb ik dat ze zo klein zijn dat ze op een printje passen en dat ze genoeg kunnen schakelen, is er een moc aan te bevelen?

Het nadeel van een moc die op de nul schakelt is dat de pinnen altijd hoog moeten zijn, anderszins voorkomt dat weer storingen.

Heel toevallig heb ik ooit ook moc's besteld.
ik heb hier de moc 3023 liggen.
8 stuks

Dan heb je natuurlijk ook een solid state nodig, welke zou geschikt zijn om te gebruiken? ik heb geen enkel idee wat voor der bestaan en welke het goed doen op de markt en welke goed voor mij zouden kunnen zijn.

De link die BernardV me gaf, heeft een zero cross functie.
Waarvoor kan ik dat gebruiken of waar is dat handig voor?

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt

Op 26 juli 2008 23:16:01 schreef Lithium:
Ik had zelf in gedachten, elke module, met module bedoel ik dan elk printje die iets aan kan sturen of die een signaal afgeeft een wachtwoord te geven, het wachtwoord is het zetzelfde als zijn serial als ware.

Je bedoelt een 'address'. Dat heel gebruikelijk om de modulen te identificeren op het netwerk.

Op 26 juli 2008 23:16:01 schreef Lithium:Over het storen met de voeding, denk dat dit deels wel opgelost kan worden om bij elke pic een condensator op de 5V te zetten en bij me voeding, dit moet wel wat schelen, ik wil bovendien ook een pc voeding gaan gebruiken.

De voeding van elke module en PIC moet je goed ontkoppelen; dit is een vereiste en geen extraatje ofzo!

Als ik je was zou ik kijken naar RS485. Als het netwerk zich beperkt tot je kamer zou RS232 nog kunnen. Als je grotere plannen hebt werkt RS232 waarschijnlijk niet goed. PIC's laten communiceren met TTL signalen (IO-pin aan IO-pin) is vragen om problemen. Als de communicatie niet wordt gestoord kan een PIC sneuvelen door spanningpieken etc.

Er zijn hier op CO meerdere discussies geweest over hoe je PIC's aan elkaar moet knopen... zoek er maar eens op!

CAN bus werd ook nog even genoemd; dat is in mijn optiek het beste... maar er is wel wat kennis nodig om het aan de praat te krijgen...

FullPower

De grootste moeilijkheden liggen daar waar we ze niet zoeken. [Goethe]

Op mijn site staat een voorbeeld van een CAN bus

heb zelf totaal geen verstand van can bus, die kennis kan natuurlijk komen.
Misschien voor jullie een domme vraag maar zelf heb ik dat nog niet door.

Als ik can bus gebruik of RS485 heb ik dan aparte ic's nodig die de gegevens voor mij van de pic versturen en ontvangen?

hier staat wat over de can bus:
http://project.iwt-kdg.be/hobucan/HobuFilesDir/OnzeCursus/CANprotocol.…

Het eerste plaatje wat je ziet dat is dus ook mijn plan alleen dan geen can maar uart.
Eerlijk gezegd weet ik nog niet wat ik zou willen gebruiken, wil natuurlijk dat het goed is maar moet wel weten hoe het werkt, uart heb ik wel eens gebruikt en dat werkt in princiepe goed.
Denk dat het gewoon uit proberen is?

[Bericht gewijzigd door Lithium op zondag 27 juli 2008 11:03:18 (19%)

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt

Op 26 juli 2008 21:30:59 schreef Lithium:Ik had gezien dat frits op zijn website wel een triac gebruikt heeft vandaar die vraag.

Dat zijn stand-alone projecten (ik denk dat je één van de dimmerprojecten bedoelt) en absoluut niet geschikt voor gebruik rechtstreeks aan een bus.
De dimmer is wel te gebruiken hiervoor als je deze aanstuurt via een optocoupler (dat doe ik zelf ook thuis).
Meer over optocoupler aansturing van de dimmer staat in het dimmerproject (o.a. het schema).

Voti verkoopt leuke kleine solid states.
Een 8-pins 0,6A (een type mét en een type zónder nuldoorgang).
En een 8 Ampère type (in een andere behuizing) voor het zwaardere werk (ook verkrijgbaar in mét en zónder nuldoorgang).
Gebruik om apparaten/lampen in te schakelen de nuldoorgangs versie.
Als je lampen wilt dimmen dan de versie zónder nuldoorgang nemen.

Bekijk www.voti.nl/winkel/p/ICs.html en klik op opto-isolated triac SSRs

EDIT:
Denk er bij het aansturen van deze SSR's aan dat je een serieweerstand (560 Ohm) plaatst!
Dus niet rechtstreeks 5V aanbieden aan de ingang want dan is ie meteen stuk!

Ohm sweet Ohm | www.picbasic.nl

Op 27 juli 2008 10:44:49 schreef Lithium:
Als ik can bus gebruik of RS485 heb ik dan aparte ic's nodig die de gegevens voor mij van de pic versturen en ontvangen?

Jah!

Voor de RS485 heb je IC's zoals een MAX485 nodig (8 pins ICtjs). Er zijn heel veel verschillende typen van, geleverd door diverse fabrikanten. Dat IC hang je aan je PIC en je bent bijna klaar: Een TX, een RX en een Zend/Ontvang selectie bitje.

Voor CAN is er ook een dergelijk IC; een 82C251 bijvoorbeeld van NXP. Ook hier zijn er meerdere leveranciers die deze IC's leveren. Voor CAN heb je ook nog een IC nodig die de low-level protocol afhandeling doet; die zijn los te verkrijgen (MCP2510 o.i.d. van Microchip) of je hebt PIC's met ingebouwde CAN.

Als je nig niet zoveel programmeer en hardware ervaring hebt raad ik je aan om voor RS485 te gaan; dat is veel simpeler dan CAN!

FullPower

De grootste moeilijkheden liggen daar waar we ze niet zoeken. [Goethe]

Het eerste plaatje wat je ziet dat is dus ook mijn plan alleen dan geen can maar uart.

Uart is geen bus.
Zo kan je op een uart verbinding niet zomaar meerdere apparaten laten 'praten'.

Tevens is deze verbinding niet geschikt voor langere afstanden.

Ik denk dat ik dan voor de RS485 moet gaan.

Hoe gaat dit precies in zijn werk? ik moet dat aan de tx en rx hangen om dan vervolgens data te verzenden, hoe doe ik dat bijv in picbasic?

Dit programma wil ik misschien aan gaan schaffen omdat ik echt meer dan 50 regels nodig zal hebben.

Wat voor data kan ik wel en niet versturen? het zal toch een bit patroon moeten zijn of zet dat ic het voor me om?

Kan iemand mij dit wat uitleggen?
Kan ik bijv, de aurt signalen van zenden en ontvangen op dat ic zetten en hetzelfde bij alle anderen? volgensmij mijn logica moet het gewoon omgezet worden door het ic en verzonden worden, of hoe werkt dat en op welke manier?

Ik denk dat die opto-isolated triac SSRs 8 amp versie wel goed moet zijn om dingen aan te sturen, moet ik natuurlijk wel rekening mee houden op me print plaat.
Dat is precies wat ik zoek.

het vervelende van die maxim ic is dat hij 12V spanning nodig heeft en de pic werkt met 5V ik wil alle printjes zo klein mogelijk maken, nu zou ik er een 7805 op moeten zetten om de pic te voeden, dit kost allemaal ruimte

[Bericht gewijzigd door Lithium op zondag 27 juli 2008 19:54:55 (12%)

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt
bprosman

Golden Member

Ach, het begint misschien vervelend te worden omdat ik deze link vaak aanhaal maar hier staat alles eigenlijk kant-en-klaar :

http://www.hth.com/snap/

Groeten, Bram

De jongere generatie loopt veel te vaak zijn PIC achterna.

Kan het altijd door lezen.
Bedankt voor de link

Ik heb echter nog wel een vraag, hoe veilig is dit alles? ik gebruik dus de max 485 en de SSR die Frits mij gegeven heeft.

Verder scheid ik de 230V van de print met de 12V voeding.

[Bericht gewijzigd door Lithium op zondag 27 juli 2008 21:31:16 (66%)

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt

Op 27 juli 2008 19:09:19 schreef Lithium:
het vervelende van die maxim ic is dat hij 12V spanning nodig heeft en de pic werkt met 5V ik wil alle printjes zo klein mogelijk maken, nu zou ik er een 7805 op moeten zetten om de pic te voeden, dit kost allemaal ruimte

Ik zou dit toch doen.
Stuur een hoger voltage door je kabel dan je nodig denkt te hebben en neem op je kleine printjes een 78L05 (TO-92). Zo ben je er in ieder geval zeker van dat je printjes de juiste spanning krijgen en niet flink inzakken door verliezen in de kabels.

bprosman

Golden Member

en niet flink inzakken door verliezen in de kabels.

Met alle mogelijke ongelukkige en onverwachte reset problemen als gevolg.

Groeten, Bram

De jongere generatie loopt veel te vaak zijn PIC achterna.

Op 27 juli 2008 19:09:19 schreef Lithium:
het vervelende van die maxim ic is dat hij 12V spanning nodig heeft en de pic werkt met 5V ik wil alle printjes zo klein mogelijk maken, nu zou ik er een 7805 op moeten zetten om de pic te voeden, dit kost allemaal ruimte

Ik weet niet over welke maxim je het hier hebt, maar je rs485 bus kun je gewoon op 5 volt draaien.
Mijn domotica draait met SN75176 drivers perfect op 5v volt.

Supply voltage was 12V staat in de datasheet.

ik denk wel dat ik 12V moet gebruiken kan ik mooi 5V van maken voor me pic, en 12 voor die maxim.

Ik had de vraag nog of ik gewoon uart naar de tx en rx van de maxim kon sturen? die zend dat verder of werkt dat niet zo?
Zou wel handig zijn :P

Zeg me wat je nodig hebt en ik zal je vertellen hoe je zonder kunt