Kommunikation i hemmanätverk mellan µc:s typ RS232

Elektronikrelaterade (på komponentnivå) frågor och funderingar.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av v-g »

Bakgrund:
Vill ha kommunikation mellan lite olika µc:s av typ RS232 detta för att dels kunna styra dem med servern och dels kunna kommunicera enheterna emellan.

Vet att man kan köra tcp/ip men detta känns som overkill och dessutom antar jag att det är ganska dyrt. Jag siktar på några tior plus kringkomponenter som max.

Vad jag förstått så är RS232 inte helt lämpligt på sträckor utöver 15 meter samt att jag inte vet hur det fungerar med flera mottagare/sändare.

Fungerar RS485 likadant fast man ersätter typ MAX232 med en RS485 krets eller hur gör man?

Hur löser man det hela med en PIC, helst med den integrerade UARTEN?

Farten är inte så viktig det är inga våldsamma data som ska skickas utan snarare lampa , dimmer läge 5 osv.

Jag skulle även uppskatta info om bra/billiga kretsar (och köpställe) samt vad man ska använda för kabel (antar Cat5).

Måste erkänna mig som totalt novis på detta område :doh:
Användarvisningsbild
Icecap
Inlägg: 26786
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av Icecap »

Man använder en MAX485 krets istället för en MAX232 och styr riktningen med pinnen som gör detta.

Med rätt terminering (kolla databladet) kan du dra det runt 1500m på vanlig TP.
Om enheterna inte ska svara tillbaka behöver du inte ens att styra kommunikationsriktningen.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av v-g »

Ok då var den lilla biten iaf korrekt uppfattat. Jo enheterna (iaf en del av dem) ska kunna "svara" det hade jag glömt.

Räcker det med två sladdar enbart eller är det fel?

MAX485's datablad.

På sidan 16 fig.25 är det ett halvt duplex nätverk och det verkar ju vara nåt sånt jag tänkt mig.

Hittade denna bild:
Bild
Men är det bara att köra rätt in i porten och kommunicera som över vanlig RS232 dvs med vanliga mscomm eller hur gör man? Hittar liksom ingen info om detta sen heter portarna i databladet A & B och vilken av dessa som ska in var fattar jag inte :doh:

Om man sen så kollar i databladet för PIC:en (i detta fall en 16F887) så verkar sid 160 paragraf 12.1.2.9 vara av intressen dvs 9-bit Address Detection Mode, verkar ju kunna bli riktigt smidigt detta :D
Användarvisningsbild
Icecap
Inlägg: 26786
Blev medlem: 10 januari 2005, 14:52:15
Ort: Starup (Haderslev), Danmark

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av Icecap »

Nja... lämpligt ät TP + GND, alltså 3 ledare.

Och att trycka in det i en PC är inte så enkelt faktisk, det finns dock USB-RS485-dongels har jag sett.

Man kan dock bygga en RS232-RS485 mojäng själv men det är inte helt enkelt just då kommunikationen kan byta riktning.
Användarvisningsbild
arune
Inlägg: 109
Blev medlem: 17 juni 2003, 23:37:00
Ort: Mölnlycke
Kontakt:

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av arune »

v-g: jag tycker det låter som vårt koncept med CAN skulle passa dig rätt bra?

För att kunna kommunicera med servern så behöver en av enheterna vara av typen "gateway" som översätter mellan CAN och RS232, USB eller Ethernet.
Vi har färdiga enheter att köpa (en nod för ca 150 inkl moms) men vill du komma undan billigare kan du givetvis köpa in komponenterna separat/sampla och bara köpa PCBerna av mig (typ 10kr/st). På de färdiga enheterna (http://projekt.auml.se/homeautomation:h ... r:corecard) sitter en AVR mega168, switchad DC/DC och CAN, sen har vi ett 4-pols kontaktdon för power+can och en IO-header för att koppla in den hårdvara som ska styra något.
Se även youtube-klippet på http://projekt.auml.se/homeautomation:g ... starterkit för att så vårt bygg-system.
Enheterna kommer med bootloader så du behöver förmodligen inte ens använda programmerare/ISP.
Allt är open source, mjukvara och hårdvara, så scheman och allt finns i SVN och ska vara dokumenterat på vår wiki.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av v-g »

arune:Jag har följt din tråd om hemautomation och det verkar fungera prima så inget ont om det. Men tyvärr är 150 spänn på tok för dyrt för mina ändamål där jag kanske bara ska ha av/på på en LED tex. Kretskortet var bra prissatt(så inget gnäll på det) men då jag helst vill kunna göra allt på ett kort och på det kör PIC så faller tyvärr det bort. PIC:arna har jag dessutom redan hemma :roll:

Det tråkiga är också att jag har en befintlig serverdel som just nu kommunicerar via RS232 och denna skulle jag helst vilja slippa ändra i allt för mycket, att däremot lägga till adressanrop känns lagomt. Sen gillar jag att få experimentera lite också. :wink:

Det jag verkar ha missat är hur själva kommunikationen sköts är det bara att tjoffa i de två kretsarna och sen klart och CAN ser till att BIT:arna kommer dit de ska? Beskriv gärna hur det fungerar, kretsarna finns ju på ELFA och är överkomliga tycker jag. Vad behövs på serversidan för att kunna kommunicera (gärna USB)? Hur strömmatar du det hela via en särskild Vcc kabel eller? (syns inte på kopplingsscheman nämligen vad jag kan se :( )

Extraultratrevligt är ju att MCP2515 och MCP2551 är från Microchip så då borde ju allt fungera bättre med en PIC :D ;)

Icecap:Lärdom nummer två idag :D En sån omvandlare kostar bara en tusing på elfa :roll: (tur nog står Ebay till min tjänst och där kostar den 5$ inkl frakt och iom att jag bara behöver en så borde det ju vara ok)

http://shop.ebay.com/180364799179 <--den hittade jag.


Vilka fördelar har endera av dessa då? Vilket är bäst sämst och på vad?
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av blueint »

Du kan köra single-ended open-collector bus också. Fördel: snorbilligt. Nackdel: störningskänsligt.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av v-g »

Måste vara någon form av "störningsokänsligt" pga att kablarna säkert blir 50 meter totalt. Just nu kör jag RS232 på uppemot 10 meter och det fungerar sketabra men där är ju antalet noder "aningen" begränsat ;)

Känns då bättre att välja ett bra grundämne så att man slipper jävlas med något så värdelöst som att felsöka fel som beror på felvald grundkonstruktion. Det kostar ju också några spänn iom att jag tänkt ha några noder så en 500 pistoler ryker nog och dessutom massa jobb med kretskort osv så det är därför jag frågar folk som _vet_ :)
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av v-g »

arune:Om man har ett av era "corecard" räcker det sen med en MAX232 eller en FTDI för att köra CAN och sen de andra kretsarna på varje "nod" om man så säger? Har jag uppfattat det rätt.

v-g som forskar hela dagen i datablad och can/rs485 SAMT försöker lyssna lite på läraren ;) :hacker:
sodjan
EF Sponsor
Inlägg: 43288
Blev medlem: 10 maj 2005, 16:29:20
Ort: Söderköping

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av sodjan »

> och CAN ser till att BIT:arna kommer dit de ska?

Ja, "i princip"... :-)

Enklast/näst är att läsa på lite om CAN ifall man är intresserad.
Det finns lite kortfattat info i ett CAN-PIC datablad, och det
finns nog lite separat info hos Microchip också. Eller Google...
Användarvisningsbild
arune
Inlägg: 109
Blev medlem: 17 juni 2003, 23:37:00
Ort: Mölnlycke
Kontakt:

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av arune »

v-g skrev:arune:Jag har följt din tråd om hemautomation och det verkar fungera prima så inget ont om det. Men tyvärr är 150 spänn på tok för dyrt för mina ändamål där jag kanske bara ska ha av/på på en LED tex. Kretskortet var bra prissatt(så inget gnäll på det) men då jag helst vill kunna göra allt på ett kort och på det kör PIC så faller tyvärr det bort. PIC:arna har jag dessutom redan hemma :roll:

Det tråkiga är också att jag har en befintlig serverdel som just nu kommunicerar via RS232 och denna skulle jag helst vilja slippa ändra i allt för mycket, att däremot lägga till adressanrop känns lagomt. Sen gillar jag att få experimentera lite också. :wink:

Det jag verkar ha missat är hur själva kommunikationen sköts är det bara att tjoffa i de två kretsarna och sen klart och CAN ser till att BIT:arna kommer dit de ska? Beskriv gärna hur det fungerar, kretsarna finns ju på ELFA och är överkomliga tycker jag. Vad behövs på serversidan för att kunna kommunicera (gärna USB)? Hur strömmatar du det hela via en särskild Vcc kabel eller? (syns inte på kopplingsscheman nämligen vad jag kan se :( )
Det är förmodligen ganska billigt om man räknar med tiden man sparar på att utveckla allt själv, men givetvis beror det ju på om man räknar sin egen tid :)
CAN-controllern sköter själv kommunikationen med CRC. Så man behöver bara lägga paketet i buffern och sen behöver man inte bry sig så mycket mer, behöver bara kolla så buffern är tom innan.
För att en server ska kunna vara med så får man ha en gateway-enhet, där kör vi med ett corecard+usb/rs232/ethernet som bara skickar paketen mellan can och respektive port.
För matning har vi en röd micromatch-kontakt där man kopplar in en 4-ledad kabel (vi brukar använda flat telefonkabel): GND, 9-24VDC, CANL, CANH.
v-g skrev:arune:Om man har ett av era "corecard" räcker det sen med en MAX232 eller en FTDI för att köra CAN och sen de andra kretsarna på varje "nod" om man så säger? Har jag uppfattat det rätt.
Ja, man får ta ett corecard och koppla mot max232/ftdi/ethernet så har man sin gateway som man kan koppla till en PC. Denna gateway kan dock inte ha samma bootloader/bios som de andra noderna, den är lite special. På PC-sidan får man om man har en RS232- eller USB-gateway öppna en serieport och sen skicka 17 bytes på ett speciellt format så kommer gatewayen skicka det vidare på CAN. Sen kommer det mottagas paket på 17 bytes på PCn som är de paket som går på CAN.
Köper man ett starterkit så får man med 2st corecard som man kan göra vad man vill med (nästan) och en gateway-enhet.


Hur många noder rör det sig om?
blueint
Inlägg: 23238
Blev medlem: 4 juli 2006, 19:26:11
Kontakt:

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av blueint »

Isåfall använd EIA-485 tranceivers. Samt Cat.5 kabel mellan noderna, tror dock miniavståndet vart 0,5m eller liknande. Krock kan undvikas med En-master..Flera-slavar. Eller stafettpinne.
Använd sedan MCUns UART för att skicka data över linjen. Kräver dock kristall.
v-g
EF Sponsor
Inlägg: 7875
Blev medlem: 25 november 2005, 23:47:53
Ort: Kramforce

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av v-g »

sodjan:Har skummat igenom nästan hela databladet till 2515, till 2551 var det nästan inget så det var inte mycket att läsa. Tyvärr verkar inte det räcka för att jag ska fatta hur det fungerar ner i detalj :doh:

arune:Just i dags dato är det en nod men sen tillkommer flera st med varierande funktionalitet. Sensorer i hela huset är ju ett måste om man ska vara en äkta EF:are :fransman:

Evvis har jag tänkt ljussensor, belysning (typ fönsterlyse, RGB) osv osv osv. Det är just därför jag vill kunna ha någon slags system med många noder så att man (lite) enklare kan stoppa i en ny enhet utan att behöva riva allt eller kommunicera i flera led.

Men det låter ju trevligt med lägga i buffer och vips klart (förhoppningsvis iaf ) det är ju ganska likt seriekommunikationen idag.

Som sagt det är inga problem med en femhunka i initialkostnad men ska det kosta 150 pix minst för varje nod tycker jag inte det är lika skoj längre.

Är det någon slags adressering och vart ligger den? Hittar inget i 2515 manualen om det iaf :doh:

Det lutar dock åt att det är lite för avancerat med CAN och RS485 känns mer likadant som det jag kör nu dessutom verkar även det funktionsdugligt så det räcker. Jag vill liksom helst slippa en massa kodande bara för kommunikaionens skull kostar ju både tid och minne.

Typiskt man skulle inte haft valmöjligheter alls :evil:
danielr112
Inlägg: 8092
Blev medlem: 18 januari 2009, 00:48:24
Ort: Alvesta, Småland

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av danielr112 »

v-g varför inte basera det på 1-wire nät? Mycke av det du vill går att lösa och är ju ganska billigt per nod om man köper in en hög med komponetner direkt.

Själv kommer jag köra med 1-wire och där jag inte vill dra kablar zigbee. zigbee kostar per enhet runt 9dollar. (om det inte ändrats senaste tiden)
Användarvisningsbild
JonasJ
Inlägg: 653
Blev medlem: 11 september 2007, 16:02:26
Ort: Kinna
Kontakt:

Re: Kommunikation i hemmanätverk mellan µc:s typ RS232

Inlägg av JonasJ »

Denna byggde jag till min ROV där jag kör RS485 mellan PC:n och ROV:en. Fungerar utan problem även om just timing var något som jag borde ha funderat igenom bättre...

RS485 kretsar kan man köpa billigt från t.ex. SureElectronics. Hm, man kunde köpa billigt därifrån men nu verkar de helt slutat med IC :humm:
Skriv svar