Bool'sche Probleme

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
Pinot
Beiträge: 55
Registriert: 23 Nov 2021, 15:24
Wohnort: Pfalz

Bool'sche Probleme

Beitrag von Pinot » 04 Dez 2021, 16:51

Ich hab eine Steuerung programmiert, die schon recht fein macht was sie tun soll, nur an einer Stelle Mist produziert. Nachdem ich mir jetzt ueberall Variablen eingebaut habe, um den Status zu debuggen, sehe ich auch warum: ein EXOR liefert eine 1, obwohl alle seine Eingaenge ebenfalls 1 sind (siehe Screenshot).
2021-12-04_16h41_17.png
2021-12-04_16h41_17.png (64.63 KiB) 2244 mal betrachtet
Das war so natuerlich icht gedacht. In meiner Verzweiflung habe ich die Logik neu gezeichnet, da dem grafischen Editor wohl nicht zu trauen ist -> gleiches Ergebnis.

Haette jemand einen Tipp, was ich uebersehe oder falsch verstehe?

Gruesse, Thomas

davidrpf
Beiträge: 252
Registriert: 14 Jul 2015, 14:27
Kontaktdaten:

Re: Bool'sche Probleme

Beitrag von davidrpf » 04 Dez 2021, 17:04

Hallo Thomas,

ich wüsste nicht, wie ein XOR Operator mit drei Operanden definiert sein soll. Welche Wahrheitswerttabelle würdest du denn erwarten? Ich kann mir vorstellen, dass das intern womöglich als (A XOR B) XOR C definiert ist. Dann evaluiert der Ausdruck in der Klammer zu false und das Gesamtergebnis ist true.

Viele Grüße
David
Polarkoordinaten Plotter https://youtu.be/u6XwKxZuxqk
Autofabrik: https://youtu.be/mX9JWcca6kQ

Pinot
Beiträge: 55
Registriert: 23 Nov 2021, 15:24
Wohnort: Pfalz

Re: Bool'sche Probleme

Beitrag von Pinot » 04 Dez 2021, 17:15

"Exklusives ODER" bedeutet: Ausgang = 1, wenn genau EIN Eingang (und nur EIN Eingang) = 1. Wenn mehr als Eingang = 1 ist oder wenn kein Eingang = 1 ist, dann ist der Ausgang = 0.

Oder siehe z.B. auch hier: https://www.elektronik-kompendium.de/pu ... r/exor.htm

Ich denke in RoboPro kann man nicht umsonst ein EXOR mit bel. vielen Eingaengen waehlen.

davidrpf
Beiträge: 252
Registriert: 14 Jul 2015, 14:27
Kontaktdaten:

Re: Bool'sche Probleme

Beitrag von davidrpf » 04 Dez 2021, 17:32

Ich weiß schon was ein XOR-Gatter ist ;)

Den XOR-Operator kenne ich deshalb nur als binären Operator, siehe auch Wikipedia. Macht auch Sinn, da die Kontravalenz aus der Aussagenlogik ebenfalls genau zwei Aussagen betrachtet.

Eine GENAU EINS Beziehung zwischen mehr als zwei Eingängen (Operanden) kannst du z.B. durch Addieren der Werte und anschließendes Vergleichen gegen 1 realisieren, sofern deine Variablen jeweils Werte in {0,1} annehmen.
Pinot hat geschrieben:
04 Dez 2021, 17:15
Ich denke in RoboPro kann man nicht umsonst ein EXOR mit bel. vielen Eingaengen waehlen.
Diesen Schluss halte ich für gewagt: Nur weil in RoboPro etwas existiert, heißt das nicht, dass es im Allgemeinen sinnvoll ist.

Letztlich sind auch die AND und OR Operatoren mit mehr als zwei Eingängen in RoboPro nichts anders als Kurzschreibweisen für (((A AND B) AND C) ...), denn auch diese Operatoren sind jeweils binär.
Polarkoordinaten Plotter https://youtu.be/u6XwKxZuxqk
Autofabrik: https://youtu.be/mX9JWcca6kQ

davidrpf
Beiträge: 252
Registriert: 14 Jul 2015, 14:27
Kontaktdaten:

Re: Bool'sche Probleme

Beitrag von davidrpf » 04 Dez 2021, 17:40

Offensichtlich hast du den Link nochmals geändert, während ich gepostet habe. Entspricht die Tabelle auf der Elektronik-Kompendium Seite (nicht ITWissen.info) nicht genau dem, was RoboPro ausgibt?
Polarkoordinaten Plotter https://youtu.be/u6XwKxZuxqk
Autofabrik: https://youtu.be/mX9JWcca6kQ

Pinot
Beiträge: 55
Registriert: 23 Nov 2021, 15:24
Wohnort: Pfalz

Re: Bool'sche Probleme

Beitrag von Pinot » 05 Dez 2021, 12:02

Ja, das Verhalten, dass in der Tabelle widergegeben ist, ist dsa, da ich gerne haette. Das interessante ist doch aber was unter der Tabelle steht: das dieses Verhalten einer Aneinanderkettung von EXORs entspricht und das Ergebnis nicht logisch ist. Und eben so scheint es in RoboPro auch umgesetzt zu sein, analog AND und OR: ein EXOR mit n>2 Eingaengen entspricht einer Hintereinanderschaltung von n-1 EXOR-Gattern mit 2 Eingaengen. Und dadurch ergibt sich eben, dass wenn alle Eingaenge 1 sind, der Ausgang auch 1 ist. Was nicht gerade "exklusiv" ist ;-)

Benutzeravatar
steffalk
ft:pedia-Herausgeber
Beiträge: 1792
Registriert: 01 Nov 2010, 16:41
Wohnort: Karlsruhe
Kontaktdaten:

Re: Bool'sche Probleme

Beitrag von steffalk » 05 Dez 2021, 12:17

Tach auch!

Zu XOR = "genau ein Eingang 1" vs. XOR = (XOR zwischen a und b) XOR (c) hatten wir schon mal was:

viewtopic.php?f=21&t=2505&p=15827

Gruß,
Stefan

Pinot
Beiträge: 55
Registriert: 23 Nov 2021, 15:24
Wohnort: Pfalz

Re: Bool'sche Probleme

Beitrag von Pinot » 05 Dez 2021, 13:10

Danke fuer den Link. Habe nach EXOR gesucht, statt XOR, daher hatte ich ihn nicht gefunden. Bestaeatigt aber letztendlich alles bisher geschriebene. Wir leben bei RoboPro damit, dass bei einem XOR mit n Eingaengen der Ausgang dann 1 wird, wenn entweder nur ein Eingang 1 ist oder alle Eingaenge 1 sind. In meinem Fall spart mir das sogar einen AND-Baustein :-)

vleeuwen
Beiträge: 1557
Registriert: 31 Okt 2010, 22:23
Wohnort: Enschede (NL)
Kontaktdaten:

Re: Bool'sche Probleme

Beitrag von vleeuwen » 05 Dez 2021, 14:56

software enigineer/teacher/advisor
Google translate
http://tescaweb.nl/Carel/?p=713

Antworten