[elektro] RS485 adás vétel átkapcsolás
hg12345
hg12345 at freemail.hu
Sat Nov 14 10:27:31 CET 2009
Igy már érthető.
Mi van ha lezárod 2x120omh akkor már a 200mV alatt lesz a feszültség és ez az érzéketlen része az eszköznek.
Másik határ eset, ha 32 netán 256 (a cmos bemenet már ezt is megengedik) ilyen készülék van egy rendszerbe kapcsolva. Az első eset estén mér az effektiv felhuzó ellenállás ~32omh ami 156mA jelent ezzel már birkozik meg a 485 meghajtó....
Amit kerestem és jól müködik, de nem a fenti elven: "Self-Tuner Asic inside RS485" Ez a RS485 és készülék közé van kötve....
"Nya'ri Viktor" <office at flexelec.hu> írta:
>
> >>http://www.pyrograph.hu/rs232_485.jpg
> >>
> >>Ellenállások húzzák szét a buszt alapállapotba; a Tx pedig az adásirányt
> >>kapcsolgatja. Ha nincs az RS485 vonalon "ezer" eszköz, akkor működik.
>
> >>A küldött kapcsolás csak egy beállított BPS-ig jó, eltérő esetben előbb kapcsolja ki az adást mint hogy a STOP bit kimegy, fordított esetben meg sokáig fogja a buszt. (ennél sokkal szerencsésebb megoldás a Tx tristate-ba tenni és azt detektálni, ez nem BPS függő, mert a uC generálja, elegendő egy ablak komparátor LM393)
>
> > ???
> > Ez egy monostabil multivibrátor mindösszesen, mitől lenne ez jó az
> > eredeti problémára?
> >
> > Egy konkrét kerethossz (baud és bit szám) esetén működik kielégítően.
>
> Akkor kicsit részletesebben:
>
> Alapállapot: SerialTx bemenet HIGH állapotban, azaz logikai 1-ben van.
> Ekkor az inverternek bekötött ST NAND kimenetén LOW lesz, így a 75176
> RS485 vonala nagyimpedanciás állapotban van, vagyis a cucc vételben van.
> Ekkor az R27-R28 ellenállások széthúzzák az A-B vonalakat a tápokra,
> vagyis a 485 vonal is alapállapotban, azaz logikai 1-ben van.
>
> Ebben az esetben a cucc vételképes, vagyis ha változik a 485 vonal
> állapota, és A-B vonal szintet vált, akkor ez megjelenik az 1-es lábon,
> ami az R22/C21 integráló miatt kb. 1usec késleltetéssel meg is jelenik a
> SerialRx kimeneten. De gondolom ez az 1usec késés senkit nem érdekel
> különösebben.
>
> Namost; a processzor úgy gondolja, hogy neki most adni kell. És simán
> alkezd adni a SerialTx vonalon. Mi történik ekkor?
> Az adás ugye egy SerialTx = LOW szinttel történik, ez a START bit.
> Ekkor az adó meghajtó bemenete LOW-ra kerül, tehát ez helyes.
> A D21 dioda miatt a C22 kondi egyből kisül, így a ST NAND kimenete
> "azonnal" HIGH-ba kerül, és a 75176 "azonnal" adásba kapcsol. És mivel a
> 75176 4-es lába LOW-ban van, ezért az A-B kimeneten szintváltás
> történik, vagyis a 6-os lábat lehúzza 0V-ra, és a 7-es lábat felhúzza
> +5V-ra; vagyis kikerült a buszra a logikai 0 állapot; mindez késleltetés
> nélkül.
> Tehát látható, hogy a logika 1->0 szintváltás korrektül kikerül az RS485
> vonalra.
>
> Nézzük meg a logikai 0->1 szintváltás esetét (lehet ez egy 0-1
> bitváltás, vagy akár a STOP bit esete is; tökmindegy):
> SerialTx visszamegy HIGH állapotba. Mivel az R21/C22 miatt a 75176 még
> legalább kb. 5usec-ig adásban marad (ez 100kBaud-os sebességek esetén is
> töredéke a bitidőnek), ezért a 4-es lábra jutott HIGH szint miatt az A-B
> kimenet is egyből visszaáll logikai 1 állapotba.
> Ezután az R21/C22 késleltetés letelte után (kb. 5usec) a 75176 visszaáll
> vételre, és ekkor már az R27/R28 tartják a vonalat logikai 1-ben.
>
> Vagyis: ez a kapcsolás az RS485 A-B vonalára a logikai 0-t a 75176
> driverével fixen kiadja, a logikai 1-et pedig csak egy kis időre adja a
> driver, utána pedig az ellenállások tartják 1-ben a 485 buszt.
>
> Az R22/C21 integrálóra pedig a SerialRx vonalon az esetleges
> átkapcsolási tranziensek kiszűrése miatt van szükség.
>
> V.
>
>
> -----------------------------------------
> elektro[-flame|-etc]
>
More information about the Elektro
mailing list