Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.sci.electronics > #290753 > unrolled thread

Re: Wandler rs232/rs482 <-> TTL halbduplex

Started byNico Hoffmann <oxensepp@gmx.de>
First post2020-10-16 16:27 +0000
Last post2020-12-16 17:10 +0000
Articles 18 — 5 participants

Back to article view | Back to de.sci.electronics

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: Wandler rs232/rs482 <-> TTL halbduplex Nico Hoffmann <oxensepp@gmx.de> - 2020-10-16 16:27 +0000
    Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-16 19:22 +0200
      Re: Wandler rs232/rs482 <-> TTL halbduplex Nico Hoffmann <oxensepp@gmx.de> - 2020-10-16 18:20 +0000
        Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-17 13:32 +0200
          Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-17 13:46 +0200
            Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-17 17:01 +0200
          Re: Wandler rs232/rs482 <-> TTL halbduplex Nico Hoffmann <oxensepp@gmx.de> - 2020-10-21 19:17 +0000
            Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-21 22:08 +0200
              Re: Wandler rs232/rs482 <-> TTL halbduplex Nico Hoffmann <oxensepp@gmx.de> - 2020-10-21 21:52 +0000
                Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-22 06:23 +0200
                  Re: Wandler rs232/rs482 <-> TTL halbduplex Stefan Wiens <s.wi@gmx.net> - 2020-10-22 06:48 +0200
                    Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-22 17:53 +0200
                  Re: Wandler rs232/rs482 <-> TTL halbduplex Nico Hoffmann <oxensepp@gmx.de> - 2020-10-22 06:26 +0000
                Re: Wandler rs232/rs482 <-> TTL halbduplex "Wolfgang Allinger" <all2001@spambog.com> - 2020-10-22 06:06 -0300
            Re: Wandler rs232/rs482 <-> TTL halbduplex Rafael Deliano <rafael_deliano@arcor.de> - 2020-10-22 11:20 +0200
              Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-22 17:56 +0200
                Re: Wandler rs232/rs482 <-> TTL halbduplex stefan <adresse@ist.invalid> - 2020-10-24 21:13 +0200
    Re: Wandler rs232/rs482 <-> TTL halbduplex Nico Hoffmann <oxensepp@gmx.de> - 2020-12-16 17:10 +0000

#290753 — Re: Wandler rs232/rs482 <-> TTL halbduplex

FromNico Hoffmann <oxensepp@gmx.de>
Date2020-10-16 16:27 +0000
SubjectRe: Wandler rs232/rs482 <-> TTL halbduplex
Message-ID<slrnrojiel.jhe.oxensepp@haydn.lewonze.de>
Nico Hoffmann schreibt:

> ich möchte einen Servomotor Robotis AX-12A
> (<https://emanual.robotis.com/docs/en/dxl/ax/ax-12a/>) über eine
> serielle Schnittstelle bedienen. Die serielle Schnittstelle hängt an
> einer SPS, daher kommen die von Robotis angebotenen Lösungen (IDE,
> Contollerboard, ...) wohl nicht wirklich in Betracht, weil die darauf
> abstellen, dass ein Stück Elektronik an einem PC hängt und von da
> bedient wird.
>
> Ich kenne mich mit den Details nicht wirklich aus, daher schildere ich
> etwas ausschweifenden meinen Gedankengang:
>
> Nun spricht der AX-12A ein serielles Protokoll ("Half Duplex
> Asynchronous Serial Communication (8bit, 1stop, No Parity)"), das
> Robotis freundlicherweise offengelegt hat, aber mit TTL-Pegeln,
> d.h. Spannung zwischen 0 und 5 Volt.
>
> Die RS232 hat RS232-Pegel, also zwischen -12V und +12V. 
>
> Ich brauche also einen Pegelumsetzer, typischerweise etwas wo der
> MAX232-IC drin arbeitet. Die gibt es fertig zu kaufen. Aber im Manual
> steht, dass es halbduplex sein soll, d.h. mit Richtungsumschaltung,
> weil es nur eine Leitung für Senden und Empfangen gibt. Vgl. das
> Schema in Kap. 5.4.1 im Manual, Link s.o.

Leider bin ich noch nicht wirklich weiter. 

Ich habe mir einemn MAX232 besorgt, der genau das macht: RS232-Pegel
auf TTL-Pegel umsetzen und umgekehrt (Richtungsumschaltung macht er
nicht).

Ich habe folgende Schaltung aufgebaut:

RS232 (von der SPS) ----TX--> MAX232 --->TX (TTL)---+
                                                    |
                                                    +-----Dynamixel
                                                    |
RS232 (zur SPS) <-------RX-- MAX232 <----RX (TTL)---+

Ich sende also von der SPS Daten zum MAX232 raus (TX), gehe über die
TTL-Seite des MAX232 zurück und bekomme dieselben Daten über die
RX-Leitung wieder in die SPS. Bis hierher ist es wie ein
"Kurzschlußstecker" mit Pegelwandlung.
Auf der TTL-Seite ist dann noch der Dynamixel angeschlossen.

Die SPS hört ihr eigenes Echo. Wenn ich die Verbindung auf der
TTL-Seite des MAX232 auftrenne, bleibt das Echo aus. Funktioniert also
soweit.

Leider höre ich keine Antwort vom Dynamixel, obwohl ich eigentlich ein
Statuspaket erwarte. Ich habe ein bischen an den Einstellungen
rumprobiert, aber der Dynamixel bleibt stumm.

Es gibt einen USB-TTL-Adapter von Dynamixel, d.h. Robotis, der
zusammen mit der Robotis-IDE den Dynamixel steuern können soll.  Den
besorge ich mir mal. Das hilft mir zwar bei meiner SPS nicht weiter,
aber wenn ich den Dynamixel damit am PC zum Leben erwecken kann, werde
ich versuchen, die TTL-Seite über den MAX232 "abzuhören". Vielleicht
sehe ich dann, warum es nicht klappt.


N., mühsam ernährt sich das Eichhörnchen...
-- 
--with-signature: illegal option -- -

[toc] | [next] | [standalone]


#290759

Fromstefan <adresse@ist.invalid>
Date2020-10-16 19:22 +0200
Message-ID<rmckt4$st7$1@solani.org>
In reply to#290753
Am 16.10.2020 um 18:27 schrieb Nico Hoffmann:
> Nico Hoffmann schreibt:

> Ich sende also von der SPS Daten zum MAX232 raus (TX), gehe über die
> TTL-Seite des MAX232 zurück und bekomme dieselben Daten über die
> RX-Leitung wieder in die SPS. Bis hierher ist es wie ein
> "Kurzschlußstecker" mit Pegelwandlung.
> Auf der TTL-Seite ist dann noch der Dynamixel angeschlossen.
> 
> Die SPS hört ihr eigenes Echo. Wenn ich die Verbindung auf der
> TTL-Seite des MAX232 auftrenne, bleibt das Echo aus. Funktioniert also
> soweit.

Vermutlich ist der Max232 stärker als der Dynamixel, d.h. der TTL 
Ausgang des Max232 schaltet den TTL Eingang des Max232 auf High wenn der 
RS232 Eingang des Max232 auf ca. -10V liegt. Im Ruhezustand ist das 
Eingangssignal des Max232 ca. -10V, der TTL Ausgang dann +5V.

Das angeschlossene Gerät schaltet ebenfalls zwischen +5V und 0V hin und her.

> Leider höre ich keine Antwort vom Dynamixel, obwohl ich eigentlich ein
> Statuspaket erwarte. Ich habe ein bischen an den Einstellungen
> rumprobiert, aber der Dynamixel bleibt stumm.

Wenn der Max genug Strom liefert, kann der Dynamixel den Eingang nicht 
auf GND ziehen.

[toc] | [prev] | [next] | [standalone]


#290763

FromNico Hoffmann <oxensepp@gmx.de>
Date2020-10-16 18:20 +0000
Message-ID<slrnrojni8.jhe.oxensepp@haydn.lewonze.de>
In reply to#290759
stefan schreibt:

> Am 16.10.2020 um 18:27 schrieb Nico Hoffmann:
>> Nico Hoffmann schreibt:
>
>> Ich sende also von der SPS Daten zum MAX232 raus (TX), gehe über die
>> TTL-Seite des MAX232 zurück und bekomme dieselben Daten über die
>> RX-Leitung wieder in die SPS. Bis hierher ist es wie ein
>> "Kurzschlußstecker" mit Pegelwandlung.
>> Auf der TTL-Seite ist dann noch der Dynamixel angeschlossen.
>> 
>> Die SPS hört ihr eigenes Echo. Wenn ich die Verbindung auf der
>> TTL-Seite des MAX232 auftrenne, bleibt das Echo aus. Funktioniert also
>> soweit.
>
> Vermutlich ist der Max232 stärker als der Dynamixel, d.h. der TTL 
> Ausgang des Max232 schaltet den TTL Eingang des Max232 auf High wenn der 
> RS232 Eingang des Max232 auf ca. -10V liegt. Im Ruhezustand ist das 
> Eingangssignal des Max232 ca. -10V, der TTL Ausgang dann +5V.

Im Ruhezustand hab' ichs mit dem Multimeter genau so gemessen.


> Das angeschlossene Gerät schaltet ebenfalls zwischen +5V und 0V hin und her.
>
>> Leider höre ich keine Antwort vom Dynamixel, obwohl ich eigentlich ein
>> Statuspaket erwarte. Ich habe ein bischen an den Einstellungen
>> rumprobiert, aber der Dynamixel bleibt stumm.
>
> Wenn der Max genug Strom liefert, kann der Dynamixel den Eingang nicht 
> auf GND ziehen.

Das könnte sein. Wie schaffe ich Abhilfe? 

N.
-- 
--with-signature: illegal option -- -

[toc] | [prev] | [next] | [standalone]


#290795

Fromstefan <adresse@ist.invalid>
Date2020-10-17 13:32 +0200
Message-ID<rmekp5$8o8$1@solani.org>
In reply to#290763
Am 16.10.2020 um 20:20 schrieb Nico Hoffmann:
> stefan schreibt:
> 
>> Am 16.10.2020 um 18:27 schrieb Nico Hoffmann:
>>> Nico Hoffmann schreibt:
>>
>>> Ich sende also von der SPS Daten zum MAX232 raus (TX), gehe über die
>>> TTL-Seite des MAX232 zurück und bekomme dieselben Daten über die
>>> RX-Leitung wieder in die SPS. Bis hierher ist es wie ein
>>> "Kurzschlußstecker" mit Pegelwandlung.
>>> Auf der TTL-Seite ist dann noch der Dynamixel angeschlossen.
>>>
>>> Die SPS hört ihr eigenes Echo. Wenn ich die Verbindung auf der
>>> TTL-Seite des MAX232 auftrenne, bleibt das Echo aus. Funktioniert also
>>> soweit.
>>
>> Vermutlich ist der Max232 stärker als der Dynamixel, d.h. der TTL
>> Ausgang des Max232 schaltet den TTL Eingang des Max232 auf High wenn der
>> RS232 Eingang des Max232 auf ca. -10V liegt. Im Ruhezustand ist das
>> Eingangssignal des Max232 ca. -10V, der TTL Ausgang dann +5V.
> 
> Im Ruhezustand hab' ichs mit dem Multimeter genau so gemessen.
> 
> 
>> Das angeschlossene Gerät schaltet ebenfalls zwischen +5V und 0V hin und her.
>>
>>> Leider höre ich keine Antwort vom Dynamixel, obwohl ich eigentlich ein
>>> Statuspaket erwarte. Ich habe ein bischen an den Einstellungen
>>> rumprobiert, aber der Dynamixel bleibt stumm.
>>
>> Wenn der Max genug Strom liefert, kann der Dynamixel den Eingang nicht
>> auf GND ziehen.
> 
> Das könnte sein. Wie schaffe ich Abhilfe?
> 
> N.
> 

Man könnte es mit einem Widerstand in der TX Leitung des Max232 
versuchen, aber dann ist der Dynamixel stärker.

Keine Ahnung, ob es da eine Standardschaltung mit TTLs gibt.

Man könnte vielleicht die beiden TX-Signale auf ein AND Gatter geben und 
den Ausgang dann auf den RX Eingang des Max232 geben. Dann würden beide 
Sender in der Lage sein, die Leitung nach GND zu ziehen.

Aber du hast auf der einen Seite ja eine Leitung, die sowohl Sender, als 
auch Empfänger ist.


folgende Idee: (bitte prüfen)

Am TTL Ausgang des Max232 ein 2k2 Widerstand zur RX/TX-Leitung deines 
Dynamixel.

Diese RX/TX-Leitung dann auf den einen Eingang eines AND Gatters, auf 
den anderen Eingang die TX Leitung des Max232 (also direkt am Max232, 
nicht hinter dem Widerstand).

Wenn der PC höhrt, ist die TX Leitung auf High, das AND kann also die 
Signale von RX/TX durchschalten. Wenn der PC sendet, zieht er die TX/RX 
Leitung über den 2k2 nach GND.

Eventuell noch eine Diode parallel zum Widerstand damit die Leitung 
besser nach GND gezogen werden kann.


Andere Idee:

Man schaltet die TX* Leitung des PCs nicht auf den RX* des Max232 
sondern über einen Widerstand auf die Basis eines NPN Transistors. 
Emiter an GND und den offenen Kollektor an RX/TX.

Die RX/TX Leitung dann wie gehabt an den TTL Eingang des Max232.

Dann verwendet man nur 1/4 des Max232, ist aber egal.

Wenn nun die TX* Leitung des PCs auf +10V geht, schaltet der Transistor 
die RX/TX Leitung auf GND. Ist die TX* Leitung auf -10V, sperrt der 
Transistor und TX/RX kann vom Dynamixel nach GND gezogen werden.

Den 1/4 Max232 könnte man auch noch durch einen einzelnen Transistor 
ersetzen. Man braucht im Prinzip nur einen Inverter.

















[toc] | [prev] | [next] | [standalone]


#290796

Fromstefan <adresse@ist.invalid>
Date2020-10-17 13:46 +0200
Message-ID<rmeli1$99n$1@solani.org>
In reply to#290795
ungefähr so: nur eine Idee, nicht getestet

https://www.directupload.net/file/d/5974/mid8ax3c_jpg.htm

[toc] | [prev] | [next] | [standalone]


#290810

Fromstefan <adresse@ist.invalid>
Date2020-10-17 17:01 +0200
Message-ID<rmf116$i8k$1@solani.org>
In reply to#290796
Am 17.10.2020 um 13:46 schrieb stefan:
> ungefähr so: nur eine Idee, nicht getestet
> 
> https://www.directupload.net/file/d/5974/mid8ax3c_jpg.htm
> 

oder so:

https://www.directupload.net/file/d/5974/yy7l8565_jpg.htm

[toc] | [prev] | [next] | [standalone]


#291171

FromNico Hoffmann <oxensepp@gmx.de>
Date2020-10-21 19:17 +0000
Message-ID<slrnrp0tti.418.oxensepp@haydn.lewonze.de>
In reply to#290795
stefan schreibt:

> Am 16.10.2020 um 20:20 schrieb Nico Hoffmann:
>> stefan schreibt:
>> 
>>> Am 16.10.2020 um 18:27 schrieb Nico Hoffmann:

>>>> Leider höre ich keine Antwort vom Dynamixel, obwohl ich eigentlich ein
>>>> Statuspaket erwarte. Ich habe ein bischen an den Einstellungen
>>>> rumprobiert, aber der Dynamixel bleibt stumm.
>>>
>>> Wenn der Max genug Strom liefert, kann der Dynamixel den Eingang nicht
>>> auf GND ziehen.
>> 
>> Das könnte sein. Wie schaffe ich Abhilfe?


> Man könnte es mit einem Widerstand in der TX Leitung des Max232 
> versuchen, aber dann ist der Dynamixel stärker.

Ich hab' das mal probiert. 1,2kOhm vom TTL-Ausgang des MAX232 zum
'Data' des Dynamixel, und dann 1:1 an den TTL-Eingang des MAX232.

http://lewonze.de/bilder/2020/max232-AX12-A.png

Ohne Ergebnis, Der Dynamixel ist wie tot. Ich habe mit dem Oszi die
Data-Leitung abgegriffen. Wenn der Dynamixel zu schwach wäre, sollte
ich wenigstens irgendein bischen Gewackel sehen, aber nichts, null.
Ich seh' nur mein 'ping'-Telegramm.

Ich habe daher weitere Schaltungen nicht ausprobiert, weil es offenbar
nicht erfolgversprechend ist.

Der Plan ist jetzt, von Dynamixel einen USB-TTL-Adapter zu besorgen,
der vom PC aus mit einem Dynamixel-Programm betrieben werden
kann. Dann habe ich eine reine Dynamixel-Lösung ohne Eigenanteil, die
ja wohl hoffentlich funktioniert.

Dann könnte ich mit dem Oszi schauen, was passiert und mit meiner
jetzigen Nicht-Lösung vergleichen, um den Fehler zu finden. Leider hat
die SPS, die den Dynamixel steuern soll, kein USB...

N.
-- 
--with-signature: illegal option -- -

[toc] | [prev] | [next] | [standalone]


#291176

Fromstefan <adresse@ist.invalid>
Date2020-10-21 22:08 +0200
Message-ID<rmq4f5$dmp$1@solani.org>
In reply to#291171
Am 21.10.2020 um 21:17 schrieb Nico Hoffmann:
> stefan schreibt:
> 
>> Am 16.10.2020 um 20:20 schrieb Nico Hoffmann:
>>> stefan schreibt:
>>>
>>>> Am 16.10.2020 um 18:27 schrieb Nico Hoffmann:
> 

>> Man könnte es mit einem Widerstand in der TX Leitung des Max232
>> versuchen, aber dann ist der Dynamixel stärker.
> 
> Ich hab' das mal probiert. 1,2kOhm vom TTL-Ausgang des MAX232 zum
> 'Data' des Dynamixel, und dann 1:1 an den TTL-Eingang des MAX232.
> 
> http://lewonze.de/bilder/2020/max232-AX12-A.png
> 
> Ohne Ergebnis, Der Dynamixel ist wie tot. Ich habe mit dem Oszi die
> Data-Leitung abgegriffen. Wenn der Dynamixel zu schwach wäre, sollte
> ich wenigstens irgendein bischen Gewackel sehen, aber nichts, null.
> Ich seh' nur mein 'ping'-Telegramm.

Es müssen beide senden können, d.h. du solltest an T1in(11) ein halbwegs 
sauberes TTL Signal sehen und du solltest ein Eche bekommen.
Wenn der Pull-Up im AX-12A zu klein ist, kann der Max232 das Signal 
nicht nach GND ziehen. Der AD-12A empfängt dann nichts und antwortet 
auch nicht.

> Ich habe daher weitere Schaltungen nicht ausprobiert, weil es offenbar
> nicht erfolgversprechend ist.

Die anderen Schaltungsvorschläge hatten schon einen Sinn, weil bei der 
simplen Schaltung mit dem Widerstand der Max232 unter Umständen nicht in 
der Lage ist, die TXT Leitung sauber nach GND zu schalten. Das ist bei 
den beiden anderen Schaltungsvorschläge anders, d.h. beide Sender sind 
da in der Lage, die Leitung sauber nach GND zu schalten während der 
jeweils andere Sender ein H-Signal ausgibt.

> Der Plan ist jetzt, von Dynamixel einen USB-TTL-Adapter zu besorgen,
> der vom PC aus mit einem Dynamixel-Programm betrieben werden
> kann. Dann habe ich eine reine Dynamixel-Lösung ohne Eigenanteil, die
> ja wohl hoffentlich funktioniert.
> 
> Dann könnte ich mit dem Oszi schauen, was passiert und mit meiner
> jetzigen Nicht-Lösung vergleichen, um den Fehler zu finden. Leider hat
> die SPS, die den Dynamixel steuern soll, kein USB...

Es ist immer ein Problem, wenn gar nichts läuft. Dann stochert man im 
Nebel.

> 
> N.
> 

[toc] | [prev] | [next] | [standalone]


#291191

FromNico Hoffmann <oxensepp@gmx.de>
Date2020-10-21 21:52 +0000
Message-ID<slrnrp19th.418.oxensepp@haydn.lewonze.de>
In reply to#291176
stefan schreibt:

> Am 21.10.2020 um 21:17 schrieb Nico Hoffmann:
>> stefan schreibt:
>> 
>>> Am 16.10.2020 um 20:20 schrieb Nico Hoffmann:
>>>> stefan schreibt:
>>>>
>>>>> Am 16.10.2020 um 18:27 schrieb Nico Hoffmann:
>> 
>
>>> Man könnte es mit einem Widerstand in der TX Leitung des Max232
>>> versuchen, aber dann ist der Dynamixel stärker.
>> 
>> Ich hab' das mal probiert. 1,2kOhm vom TTL-Ausgang des MAX232 zum
>> 'Data' des Dynamixel, und dann 1:1 an den TTL-Eingang des MAX232.
>> 
>> http://lewonze.de/bilder/2020/max232-AX12-A.png
>> 
>> Ohne Ergebnis, Der Dynamixel ist wie tot. Ich habe mit dem Oszi die
>> Data-Leitung abgegriffen. Wenn der Dynamixel zu schwach wäre, sollte
>> ich wenigstens irgendein bischen Gewackel sehen, aber nichts, null.
>> Ich seh' nur mein 'ping'-Telegramm.
>
> Es müssen beide senden können, d.h. du solltest an T1in(11) ein halbwegs 
> sauberes TTL Signal sehen und du solltest ein Eche bekommen.

Genau.

> Wenn der Pull-Up im AX-12A zu klein ist, kann der Max232 das Signal 
> nicht nach GND ziehen. Der AD-12A empfängt dann nichts und antwortet 
> auch nicht.

Ich kopple ja das von mir gesendete Signal zurück und werte das "Echo"
aus. Das Echo entspricht genau dem, was ich losschicke.

Daraus läßt sich schließen:

- Der MAX232 sendet TTL-seitig.
- Der MAX232 empfängt auch TTL-seitig, sonst könnte ich das Echo nicht
  bekommen.
- Dann muss auch der Dynamixel empfangen, denn er hängt direkt auf dem
  TTL-Eingang des MAX232.

>> Ich habe daher weitere Schaltungen nicht ausprobiert, weil es offenbar
>> nicht erfolgversprechend ist.
>
> Die anderen Schaltungsvorschläge hatten schon einen Sinn, weil bei der 
> simplen Schaltung mit dem Widerstand der Max232 unter Umständen nicht in 
> der Lage ist, die TXT Leitung sauber nach GND zu schalten.

Das hätte ich im Oszillogramm gesehen!

Ich sehe aber nur das Signal, was ich sende, und dann nichts
mehr. Konstant 5V, wie mit dem Lineal gezogen. Wenn vom AX-12A eine
Antwort gekommen wäre, hätte es zumindest einen kleinen Wackler geben
müssen. Dann hätte ich an dieser Stelle weitergemacht. Aber so ist es
zwecklos.


> Es ist immer ein Problem, wenn gar nichts läuft. Dann stochert man im 
> Nebel.

So ist es.

N.
-- 
--with-signature: illegal option -- -

[toc] | [prev] | [next] | [standalone]


#291198

Fromstefan <adresse@ist.invalid>
Date2020-10-22 06:23 +0200
Message-ID<rmr1fq$uqr$2@solani.org>
In reply to#291191
Am 21.10.2020 um 23:52 schrieb Nico Hoffmann:
> stefan schreibt:
> 
>> Am 21.10.2020 um 21:17 schrieb Nico Hoffmann:
>>> stefan schreibt:


> Ich kopple ja das von mir gesendete Signal zurück und werte das "Echo"
> aus. Das Echo entspricht genau dem, was ich losschicke.
> 
> Daraus läßt sich schließen:
> 
> - Der MAX232 sendet TTL-seitig.
> - Der MAX232 empfängt auch TTL-seitig, sonst könnte ich das Echo nicht
>    bekommen.

korrekt, zumindest so, dass der Max232 es "versteht"

> - Dann muss auch der Dynamixel empfangen, denn er hängt direkt auf dem
>    TTL-Eingang des MAX232.

Eigentlich schon, zumindest wenn das Signal sauber auf 0 gezogen wird.

Es könnte aber sein, dass der Dynamixel eine niedrigere Schaltschwelle 
hat wie der Max232. Wenn das Signal nur zwischen +5V und +1V schaltet, 
könnte es sein, dass der deine Baustein es korrekt verarbeitet, der 
andere aber nicht.

>>> Ich habe daher weitere Schaltungen nicht ausprobiert, weil es offenbar
>>> nicht erfolgversprechend ist.
>>
>> Die anderen Schaltungsvorschläge hatten schon einen Sinn, weil bei der
>> simplen Schaltung mit dem Widerstand der Max232 unter Umständen nicht in
>> der Lage ist, die TXT Leitung sauber nach GND zu schalten.
> 
> Das hätte ich im Oszillogramm gesehen!

ja, das sollte man

> Ich sehe aber nur das Signal, was ich sende, und dann nichts
> mehr. 

wichtig ist, dass das was vom Max232 kommt vom Dynamixel "verstanden" 
wird. Deshalb solltest du auch schauen, ob das Signal wirklich sauber 
nach 0 gezogen wird.

> Konstant 5V, wie mit dem Lineal gezogen. Wenn vom AX-12A eine
> Antwort gekommen wäre, hätte es zumindest einen kleinen Wackler geben
> müssen.

Das ist korrekt.

> Dann hätte ich an dieser Stelle weitergemacht. Aber so ist es
> zwecklos.
> 
> 
>> Es ist immer ein Problem, wenn gar nichts läuft. Dann stochert man im
>> Nebel.
> 
> So ist es.
> 
> N.
> 

[toc] | [prev] | [next] | [standalone]


#291199

FromStefan Wiens <s.wi@gmx.net>
Date2020-10-22 06:48 +0200
Message-ID<87k0viuavz.fsf@eswe.dd-dns.de>
In reply to#291198
stefan <adresse@ist.invalid> writes:

> Am 21.10.2020 um 23:52 schrieb Nico Hoffmann:
>> stefan schreibt:
>>
>>> Am 21.10.2020 um 21:17 schrieb Nico Hoffmann:
>>>> stefan schreibt:
>
>
>> Ich kopple ja das von mir gesendete Signal zurück und werte das "Echo"
>> aus. Das Echo entspricht genau dem, was ich losschicke.
>>
>> Daraus läßt sich schließen:
>>
>> - Der MAX232 sendet TTL-seitig.
>> - Der MAX232 empfängt auch TTL-seitig, sonst könnte ich das Echo nicht
>>    bekommen.
>
> korrekt, zumindest so, dass der Max232 es "versteht"
>
>> - Dann muss auch der Dynamixel empfangen, denn er hängt direkt auf dem
>>    TTL-Eingang des MAX232.
>
> Eigentlich schon, zumindest wenn das Signal sauber auf 0 gezogen wird.
>
> Es könnte aber sein, dass der Dynamixel eine niedrigere Schaltschwelle
> hat wie der Max232. Wenn das Signal nur zwischen +5V und +1V schaltet,
> könnte es sein, dass der deine Baustein es korrekt verarbeitet, der
> andere aber nicht.
>
>>>> Ich habe daher weitere Schaltungen nicht ausprobiert, weil es offenbar
>>>> nicht erfolgversprechend ist.
>>>
>>> Die anderen Schaltungsvorschläge hatten schon einen Sinn, weil bei der
>>> simplen Schaltung mit dem Widerstand der Max232 unter Umständen nicht in
>>> der Lage ist, die TXT Leitung sauber nach GND zu schalten.
>>
>> Das hätte ich im Oszillogramm gesehen!
>
> ja, das sollte man
>
>> Ich sehe aber nur das Signal, was ich sende, und dann nichts
>> mehr. 
>
> wichtig ist, dass das was vom Max232 kommt vom Dynamixel "verstanden"
> wird. Deshalb solltest du auch schauen, ob das Signal wirklich sauber
> nach 0 gezogen wird.
>
>> Konstant 5V, wie mit dem Lineal gezogen. Wenn vom AX-12A eine
>> Antwort gekommen wäre, hätte es zumindest einen kleinen Wackler geben
>> müssen.
>
> Das ist korrekt.
>
>> Dann hätte ich an dieser Stelle weitergemacht. Aber so ist es
>> zwecklos.
>>
>>
>>> Es ist immer ein Problem, wenn gar nichts läuft. Dann stochert man im
>>> Nebel.
>>
>> So ist es.


Mein Verständnis von "Halbduplex" ist, dass es nicht darum geht, welcher
Treiber nun der stärkere ist, sondern um ein Protokoll, das angibt, wer
senden darf, und die andere Seite muss den Treiber hochohmig schalten.


-- 
Stefan

[toc] | [prev] | [next] | [standalone]


#291303

Fromstefan <adresse@ist.invalid>
Date2020-10-22 17:53 +0200
Message-ID<rms9u4$t7n$1@solani.org>
In reply to#291199
Am 22.10.2020 um 06:48 schrieb Stefan Wiens:
> stefan <adresse@ist.invalid> writes:
> 
>> Am 21.10.2020 um 23:52 schrieb Nico Hoffmann:
>>> stefan schreibt:
>>>
>>>> Am 21.10.2020 um 21:17 schrieb Nico Hoffmann:
>>>>> stefan schreibt:

>>>
>>>> Es ist immer ein Problem, wenn gar nichts läuft. Dann stochert man im
>>>> Nebel.
>>>
>>> So ist es.
> 
> 
> Mein Verständnis von "Halbduplex" ist, dass es nicht darum geht, welcher
> Treiber nun der stärkere ist, sondern um ein Protokoll, das angibt, wer
> senden darf, und die andere Seite muss den Treiber hochohmig schalten.

Das ist korrekt. Nur schaltet der Max232 seinen TTL Ausgang nicht auf 
hochohmig. Deshalb mein Vorschlag mit dem Transistor, wobei man dann 
noch mit dem Pull-Up Widerstand experimentieren kann.

Nico schreibt aber, dass das angesteuerte Gerät nicht antwortet und dass 
er auch keine kleine Spannungsänderung gemessen hat. Das bedeutet, dass 
das Gerät das Telegramm vom PC nicht erhalten oder nicht verstanden hat.


> 
> 

[toc] | [prev] | [next] | [standalone]


#291206

FromNico Hoffmann <oxensepp@gmx.de>
Date2020-10-22 06:26 +0000
Message-ID<slrnrp299m.418.oxensepp@haydn.lewonze.de>
In reply to#291198
stefan schreibt:

> Am 21.10.2020 um 23:52 schrieb Nico Hoffmann:
>> stefan schreibt:
>> 
>>> Am 21.10.2020 um 21:17 schrieb Nico Hoffmann:
>>>> stefan schreibt:
>
>
>> Ich kopple ja das von mir gesendete Signal zurück und werte das "Echo"
>> aus. Das Echo entspricht genau dem, was ich losschicke.
>> 
>> Daraus läßt sich schließen:
>> 
>> - Der MAX232 sendet TTL-seitig.
>> - Der MAX232 empfängt auch TTL-seitig, sonst könnte ich das Echo nicht
>>    bekommen.
>
> korrekt, zumindest so, dass der Max232 es "versteht"
>
>> - Dann muss auch der Dynamixel empfangen, denn er hängt direkt auf dem
>>    TTL-Eingang des MAX232.
>
> Eigentlich schon, zumindest wenn das Signal sauber auf 0 gezogen wird.
>
> Es könnte aber sein, dass der Dynamixel eine niedrigere Schaltschwelle 
> hat wie der Max232. Wenn das Signal nur zwischen +5V und +1V schaltet, 
> könnte es sein, dass der deine Baustein es korrekt verarbeitet, der 
> andere aber nicht.

Das ist richtig, aber auch das kann ich wohl ausschließen:

http://lewonze.de/bilder/2020/ping-brdcast.png

Oben (gelb) ist RS232, unten (türkis) ist der Dynamixel-Eingang bzw
der TTL-Eingang des MAX232.

Die leichten Ausrundungen in der unteren Kurve werden durch den
Widerstand verursacht. Ohne sind es schöne Rechtecke. Der MAX232
empfängt trotzdem völlig korrekt.

Ich habe auch die Zeitbasis raufgredreht, damit ich eine ziemlich
lange Zeitspanne auf den Bildschirm bekomme, aber wie gesagt - nichts.

Ich mache mit dem USB-TTL-Adapter weiter.

N.
-- 
--with-signature: illegal option -- -

[toc] | [prev] | [next] | [standalone]


#291242

From"Wolfgang Allinger" <all2001@spambog.com>
Date2020-10-22 06:06 -0300
Message-ID<FJL0u9tzQoB@allinger-307049.user.uni-berlin>
In reply to#291191
On 21 Oct 20 at group /de/sci/electronics in article slrnrp19th.418.oxensepp@haydn.lewonze.de
<oxensepp@gmx.de>  (Nico Hoffmann)  wrote:

> stefan schreibt:

> Das hätte ich im Oszillogramm gesehen!

Jetzt nicht den ganzen Fred durchgeackert, aber:

> Ich sehe aber nur das Signal, was ich sende, und dann nichts
> mehr. Konstant 5V, wie mit dem Lineal gezogen. Wenn vom AX-12A eine
> Antwort gekommen wäre, hätte es zumindest einen kleinen Wackler geben
> müssen. Dann hätte ich an dieser Stelle weitergemacht. Aber so ist es
> zwecklos.

>> Es ist immer ein Problem, wenn gar nichts läuft. Dann stochert man im
>> Nebel.

> So ist es.


Hmm, sicher das TX und RX bei Deinem Target nicht vertauscht sind?

Was macht das Target bei einem Reset, klappert da TX?



Saludos (an alle Vernünftigen, Rest sh. sig)
Wolfgang

-- 
Ich bin in Paraguay lebender Trollallergiker :) reply Adresse gesetzt!
Ich diskutiere zukünftig weniger mit Idioten, denn sie ziehen mich auf
ihr Niveau herunter und schlagen mich dort mit ihrer Erfahrung! :p
(lt. alter usenet Weisheit)      iPod, iPhone, iPad, iTunes, iRak, iDiot

[toc] | [prev] | [next] | [standalone]


#291237

FromRafael Deliano <rafael_deliano@arcor.de>
Date2020-10-22 11:20 +0200
Message-ID<rmriso$id1$1@dont-email.me>
In reply to#291171
> http://lewonze.de/bilder/2020/max232-AX12-A.png

Die Schaltung ist wenig geeignet.
Sauber ist die Variante von Motorola oben:
http://www.embeddedFORTH.de/temp/halfduplex.pdf
Unten ist das wired OR für Transistoren dargestellt,
funktioniert bei 9600 Baud auch.

> Der Dynamixel ist wie tot.

Man erwartet von einer 5V-UART zwar die Polarität
wie sie aus der UART kommt. Erfahrung mit z.B.
Barcodelesern zeigt aber, daß Pegel auch
invertiert sein können.
Lohnt sich im Breadboard gesockelte 74HC04 Gates
vorzusehen die überbrückt werden können.

MfG JRD

[toc] | [prev] | [next] | [standalone]


#291304

Fromstefan <adresse@ist.invalid>
Date2020-10-22 17:56 +0200
Message-ID<rmsa2n$t7n$2@solani.org>
In reply to#291237
Am 22.10.2020 um 11:20 schrieb Rafael Deliano:
>> http://lewonze.de/bilder/2020/max232-AX12-A.png
> 
> Die Schaltung ist wenig geeignet.
> Sauber ist die Variante von Motorola oben:
> http://www.embeddedFORTH.de/temp/halfduplex.pdf
> Unten ist das wired OR für Transistoren dargestellt,
> funktioniert bei 9600 Baud auch.
> 
>> Der Dynamixel ist wie tot.
> 
> Man erwartet von einer 5V-UART zwar die Polarität
> wie sie aus der UART kommt. Erfahrung mit z.B.
> Barcodelesern zeigt aber, daß Pegel auch
> invertiert sein können.
> Lohnt sich im Breadboard gesockelte 74HC04 Gates
> vorzusehen die überbrückt werden können.
> 
> MfG JRD
> 

Das wäre eine Möglichkeit.

[toc] | [prev] | [next] | [standalone]


#291566

Fromstefan <adresse@ist.invalid>
Date2020-10-24 21:13 +0200
Message-ID<rn1uce$2em$1@solani.org>
In reply to#291304
Am 22.10.2020 um 17:56 schrieb stefan:
> Am 22.10.2020 um 11:20 schrieb Rafael Deliano:
>>> http://lewonze.de/bilder/2020/max232-AX12-A.png
>>
>> Die Schaltung ist wenig geeignet.
>> Sauber ist die Variante von Motorola oben:
>> http://www.embeddedFORTH.de/temp/halfduplex.pdf
>> Unten ist das wired OR für Transistoren dargestellt,
>> funktioniert bei 9600 Baud auch.
>>
>>> Der Dynamixel ist wie tot.
>>
>> Man erwartet von einer 5V-UART zwar die Polarität
>> wie sie aus der UART kommt. Erfahrung mit z.B.
>> Barcodelesern zeigt aber, daß Pegel auch
>> invertiert sein können.
>> Lohnt sich im Breadboard gesockelte 74HC04 Gates
>> vorzusehen die überbrückt werden können.
>>
>> MfG JRD
>>
> 
> Das wäre eine Möglichkeit.

Allerdings gibt es dabei ein Problem: Ein Uart zieht im Ruhezustand den 
TX Pin auf 5V bzw. auf High (RS232 entsprechend die TX* Leitung auf -10V).

Wenn ich nun das Uart Signal invertiere, habe ich im Ruhezustand, also 
wenn der TX nicht aktiv ist ein Low-Signal auf dem Pin. Damit würde der 
eine Sender den anderen blockieren. Man könnte das Problem mit PNP 
Transistoren lösen, das wäre aber eine ungewöhnliche Variante.

[toc] | [prev] | [next] | [standalone]


#295654

FromNico Hoffmann <oxensepp@gmx.de>
Date2020-12-16 17:10 +0000
Message-ID<slrnrtkfq5.nvh.oxensepp@haydn.lewonze.de>
In reply to#290753
Nico Hoffmann schreibt:

> Nico Hoffmann schreibt:
>
>> ich möchte einen Servomotor Robotis AX-12A
>> (<https://emanual.robotis.com/docs/en/dxl/ax/ax-12a/>) über eine
>> serielle Schnittstelle bedienen. Die serielle Schnittstelle hängt an
>> einer SPS, daher kommen die von Robotis angebotenen Lösungen (IDE,
>> Contollerboard, ...) wohl nicht wirklich in Betracht, weil die darauf
>> abstellen, dass ein Stück Elektronik an einem PC hängt und von da
>> bedient wird.
>>
>> Ich kenne mich mit den Details nicht wirklich aus, daher schildere ich
>> etwas ausschweifenden meinen Gedankengang:
>>
>> Nun spricht der AX-12A ein serielles Protokoll ("Half Duplex
>> Asynchronous Serial Communication (8bit, 1stop, No Parity)"), das
>> Robotis freundlicherweise offengelegt hat, aber mit TTL-Pegeln,
>> d.h. Spannung zwischen 0 und 5 Volt.
>>
>> Die RS232 hat RS232-Pegel, also zwischen -12V und +12V. 
>>
>> Ich brauche also einen Pegelumsetzer, typischerweise etwas wo der
>> MAX232-IC drin arbeitet. Die gibt es fertig zu kaufen. Aber im Manual
>> steht, dass es halbduplex sein soll, d.h. mit Richtungsumschaltung,
>> weil es nur eine Leitung für Senden und Empfangen gibt. Vgl. das
>> Schema in Kap. 5.4.1 im Manual, Link s.o.


> Es gibt einen USB-TTL-Adapter von Dynamixel, d.h. Robotis, der
> zusammen mit der Robotis-IDE den Dynamixel steuern können soll.  Den
> besorge ich mir mal. Das hilft mir zwar bei meiner SPS nicht weiter,
> aber wenn ich den Dynamixel damit am PC zum Leben erwecken kann, werde
> ich versuchen, die TTL-Seite über den MAX232 "abzuhören". Vielleicht
> sehe ich dann, warum es nicht klappt.

So. Am U2D2 (der USB-TTL-Adapter, <https://www.robotis.us/u2d2/>)
läuft der AX-12A einwandfrei. Ich hab' wie gesagt kein USB an der SPS. 

Die Lösung ist derzeit, ein IoT-Gerät als Umsetzer zu mißbrauchen.
Das ist ein Raspberry-ähnlicher Einplatinencomputer, der u.a. eine
serielle Schnittstelle und eine USB-Host-Schnittstelle hat. Die SPS
häbgt an der seriellen Schnittstelle, und der U2D2 mit dem Servo am
USB. Die Daten werden einfach 1:1 durch das IoT und wieder zurück
geschoben.


Es ist natürlich mit Kanonen auf Spatzen geschossen, aber immerhin
funktioniert es.

Wenn mir die Finger jucken, kann ich immernoch einen Hardware-Umsetzer
basteln.

N.
-- 
Mephisto war kein Sachse.

[toc] | [prev] | [standalone]


Back to top | Article view | de.sci.electronics


csiph-web