Vraag:
Wat is de maximale kabellengte voor seriële communicatie tussen twee Arduino's?
hobie
2015-03-24 14:06:00 UTC
view on stackexchange narkive permalink

Ik ben een project aan het bouwen waarin twee Arduino's zullen worden verbonden door drie draden: TX een RX voor seriële communicatie en een gemeenschappelijke GND. Wat is de maximale lengte van de draden hier voordat de communicatie wordt beïnvloed?

Ik gebruik een Arduino Mega R3 aan de ene kant en een Arduino Mini aan de andere kant.

Ik heb geen specifieke vereiste voor de baudrate, ik zou de laagste kunnen gebruiken als dit op wat voor manier dan ook helpt.

Een antwoord:
Russell McMahon
2015-03-24 17:01:18 UTC
view on stackexchange narkive permalink

U moet specificeren

  • De volgorde van het bereik waarin u geïnteresseerd bent - is het in de volgorde van meters, tientallen meters, kilometers of interstate? :-). ALLES zijn mogelijk met een passend compromis.

  • Hoe u van plan bent verbinding te maken met het circuit - directe Arduino-pinnen, hoge / lage buffer, differentiële stuurprogramma's, ...

Als je 5V / 0V "unipolair" gebruikt, dan kun je met bijvoorbeeld 9600 baud vele meters krijgen met geschikte stuurprogramma's. Als u een Arduino-pin gebruikt, wordt de weerstand en de inductie direct bedraad naarmate het bereik toeneemt.

Met 300 baud kun je honderden meters bereiken met twisted pair kabels. Naarmate het bereik toeneemt, worden aspecten als overspraak van het andere circuit en externe ruis belangrijker. Bij grotere afstanden helpt het hebben van 4 draden met signaal + aarde die in elk geval in elkaar zijn gedraaid, MAAR het is waarschijnlijk dat bij interessante bereiken 2 draden plus aarde goed zullen werken.

Als u bereid bent om voldoende spanning te gebruiken en langzaam genoeg signalering die je over duizenden kilometers kunt signaleren - zoals werd gedaan met zeer vroege telegraafkabels. De duizenden volt die nodig zijn en de signaalsnelheden van misschien een paar bits per seconde zullen in de meeste gevallen een belemmering zijn.

De afstand die ik wil afleggen is ongeveer 40-50 meter van binnen in ons huis tot aan de poort buiten. Mijn bedoeling was om de relevante Arduino-pinnen rechtstreeks aan te sluiten met een kabel die ik vond van een eerdere intercominstallatie.
Enig gevaar voor Arduino met lange kabellengtes. Inductie, lekkage, elektrostatische lading. (Bliksem en grondstijging door stroomstoring alleen misschien maar ...). Omgekeerde klemdiodes naar voedingsrails op alle lijnen een goed idee. Basic driver IC een ZEER goed idee. Zelfs een xx74xx14 hex Schmitt-inverter-IC aan elk uiteinde zou handig zijn. (waarbij xx is afhankelijk van het gezin). De juiste lijndrivers zijn nog beter, maar dat is een begin. ALS je Arduino waardevol is, gebruik dan een buffer.
Bedankt iedereen voor de opmerkingen en suggesties. Om erachter te komen of ik de opgegeven afstand (ca. 40m) met een simpele verbinding kan overbruggen, heb ik het geprobeerd met twee Arduino Uno, respectievelijk ingesteld als zender en ontvanger. De kaarten zijn rechtstreeks verbonden via de TX / RX-lijnen (pinnen 0 en 1) met 9600 bits per seconde. De afzender verzendt elke seconde een teststring terwijl de ontvanger luistert naar inkomende gegevens. Ik gebruik een bestaande lijn (geen info over de kwaliteit / specificaties van deze kabel. Hoe dan ook, het zender / ontvanger-paar lijkt probleemloos te werken op deze afstand en configuratie.
Bedankt, zou je een specifieke suggestie / link hebben naar een IC of driverchip?
@hobie Op 50 meter en 9600 baud kun je waarschijnlijk goede resultaten behalen (probeer het en zie) met bijna elke 5V digitale driver IC en zelfs alleen digitale output IC's. Een handig startpunt zijn de Schmitt-trigger CMOS-omvormers, meestal 74xxx14, CDxxx14, MM ..... 14. Zoek naar door Schmitt getriggerde omvormers, vermijd de laagste aandrijvingsvermogens.
@hobie Deze Digikey-catalogus zoekt naar [** Schmitt-omvormers aantal 5 bestelde prijs **] (http://www.digikey.com/product-search/en/integrated-circuits-ics/logic-gates-and-inverters/2556317 ? FV = fff40027% 2Cfff8019d & mnonly = 0 & newproducts = 0 & ColumnSort = 1000011 & page = 1 & stock = 1 & pbfree = 0 & rohs = 0 & k = schmitt + inverter & aantal = 5 & ptm = 0 & fid = 0 & pageSize = 25) biedt veel alternatieven. [** Dit 74LV1G14-pakket met één poort **] (http://www.diodes.com/_files/datasheets/74LVC1G14.pdf) kost 26 cent per stuk in 1 en 5 cent in duizenden. Ze kunnen (waarschijnlijk) worden gebruikt aan de ontvangende kant om vierkante ontvangstsignalen te produceren ...
@hobie en bij ongeveer 30 mA bij 4,5 V Vcc (32 max) bieden ze een nuttige hoeveelheid lijnaandrijving. Er zijn ook veel toegewijde buschauffeurs en veel otyer Schmitt-poorten.


Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 3.0-licentie waaronder het wordt gedistribueerd.
Loading...