Autor |
Abfrage von 24 Endschaltern |
|
|
|
|
BID = 487039
Ravenclaw Gerade angekommen
Beiträge: 4
|
|
Hallo, ich bin neu hier im Forum - und habe gleich eine kniffelige Frage.
An einer Prüfvorrichtung hätten wir 24 Endschalter abzufragen. Durch die Endschalter wird jeweils eine Bohrung auf
vorhandensein geprüft. Allerdings gibt es zig Bohrungsvarianten, bei denen einige Bohrungen "blind" sind.
Beispiel-Matrix
---------------- Bohrung 1 Bohrung 2 Bohrung 3 Bohrung 4 Bohrung 5 etc.
Variante 1 --------- Auf --------- Auf --------- Zu --------- Zu --------- Auf
Variante 2 --------- Auf --------- Zu --------- Auf --------- Zu --------- Auf
Variante 3 --------- Auf --------- Zu --------- Zu --------- Zu ---------- Zu
usw.
alle anderen wären Fehler.
Angedacht hatten wir eine Lösung über ne Quancom24 Kanal I/O Karte mit TTL Pegel in einem PC mit einem kleinen Basic Programm zur Abfrage
Allerdings möchte unser Chef nun eine "tragbare" Lösung. Die komplette Prüfvorrichtung also zum in die Hand nehmen.
Wie könnte eine "tragbare", robuste, batteriebetriebene Lösung aussehen ? Gib's da etwas was sich für unsere Zwecke umstricken liese.
Das Display müsste nur die Variantennummer anzeigen, bzw. ne Fehlermeldung bringen, wenn die Variante nicht existiert.
Und das ganze sollte so umprogrammierbar sein, dass eventuelle neue Varianten hinzugefügt werden sollen.
Wir sind übrigens Maschinenbauer mit beschränkten Elektronik-Kenntnissen, also scheidet schon alles zu komplizierte aus.
Schonmal Danke für Hilfe
|
|
BID = 487043
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
|
Hallo und Willkommen im Forum
Soll das Ganze mit einem Laptop oder eigenständig laufen? Welche Spannungsversorgung ist vorgesehen? Wie soll die Ausgabe aussehen? (Ein Display macht die Sache nicht einfacher.) Wie soll das Ganze (um)programmiert werden? Wie oft? Wie viele Kombinationen gibt es insgesamt?
Zitat :
| Wir sind übrigens Maschinenbauer mit beschränkten Elektronik-Kenntnissen, also scheidet schon alles zu komplizierte aus. |
Sind µC kompliziert?
Wenn man sich auf LEDs als Anzeige beschränkt ließe sich das Ganze vielleicht mit TTL-Bausteinen oder so machen, wird dann aber u.U. ein IC-Grab.
Ansonsten ist ein µC, eventuell mit externem Speicher für die Kombinationen, wohl die beste Wahl.
Etwas Fertiges was man einfach "umstricken" könnte fällt mir nicht ein. |
|
BID = 487051
Jornbyte Moderator
Beiträge: 7178
|
Zitat :
| Wie viele Kombinationen gibt es insgesamt |
möglich sind 16777215
Zitat :
| Sind µC kompliziert? |
Aus der Sicht eines Maschinenbauer würd ich sagen, JA.
(Du hast ja mit einem Holzkasten auch deine Probleme )
Die Frage ist, ob der Chef ca. 100€ Materialkosten ausgeben will?
Das Programm für den µC ist da noch nicht bei.
Haben die Bohrungen immer den gleichen Abstand?
In was wird gebohrt, Holz, Metall....
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|
BID = 487055
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Zitat :
| Die Frage ist, ob der Chef ca. 100€ Materialkosten ausgeben will? |
100€? Was ist da so teuer?
Das Programm müsste natürlich geschrieben werden, das ist schon richtig...
Wenn ein Display benutzt werden soll sehe ich auch kaum einen anderen Weg. Eventuell ein Laptop, aber da ist ein ext. Display nicht soooo sinnvoll....
Ich geh mal davon aus, dass die Endschalter bereits vorhanden sind und TTL-Pegel o.ä. liefern.
PS:
Zitat :
| (Du hast ja mit einem Holzkasten auch deine Probleme ) |
Dazu sag ich jetzt mal nix, sonst werd ich unfreundlich.
|
BID = 487063
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Das Ganze ist eine Frage des Programmes.
Die Hardware sieht eigentlich sehr einfach aus:
Drei Schieberegister mit parallel-load (Parallel-zu-seriell-Wandler) dienen als Eingabe für einen Mikrokontroller. Der benötigt dann für die Dateneingabe drei IO-Pins.
Die Endschalter werden an die Schieberegister angeschlossen und liefern TTL-Pegel.
Soll eine "Mustererkennung" durchgeführt werden, dann taktet der Mikrokontroller alle 24 Bits aus.
Entsprechende gültige Muster liegen als 32-Bit-Zahl im Flash des Mikrokotrollers vor (24-Bit-Zahlen gibts bspw. in C nicht, in Assembler wäre das auch mit 24 Bit möglich).
Der Kontroller führt jetzt soviel Bitmuster-Vergleiche durch, wie auch Vergleichsmuster vorliegen. Wird keines gefunden, dann liegt ein Bohrfehler vor, und wir als solcher auf einem Display ausgegeben.
Wird ein Muster "erkannt", dann kann man mit einer Art Index mehr Infos aus dem Speicher holen und diese anzeigen lassen.
Das Schwierige dabei dürfte wirklich das Display werden, der Rest ist akzeptabel .
Edit:
Um alles erweiterbar machen zu können, müsste im schlimmsten Fall nur ein serielles Kabel an den Rechner gestöpselt werden, der neue Bitmuster in den Speicher schreibt.
Nimmt man Kontroller mit 16kByte Speicher hat man gigantisch viel Platz .
Da sonst keine Infos, sondern nur eine Nummer angezeigt wird, liegt kaum ein Speicherproblem vor.
Das Problem sehe ich darin, dass der Fragesteller möglicherweise nie etwas in dieser Richtung gemacht hat
_________________
[ Diese Nachricht wurde geändert von: DonComi am 2 Jan 2008 16:18 ]
|
BID = 487069
bastler16 Schreibmaschine
Beiträge: 2140 Wohnort: Frankreich
|
Das liest sich schon gut.
Das Programm lässt sich vermutlich auch in Bascom schreiben, dann ist die Display-Ansteuerung kein Problem. Wenn es eine Art "case"-Anweisung gibt wirds noch einfacher.
(ASM/C sind natürlich besser, aber Bascom sollte hier reichen und relativ schnell zum Erfolg führen.)
Zitat :
| Um alles erweiterbar machen zu können, müsste im schlimmsten Fall nur ein serielles Kabel an den Rechner gestöpselt werden, der neue Bitmuster in den Speicher schreibt. |
Meinst du per RS232? Das müsste dann auch programmiert werden. Wenn sich die Daten sehr selten ändern kann man einfach den Quelltext anpassen und den µC neu flashen.
Zitat :
| Das Problem sehe ich darin, dass der Fragesteller möglicherweise nie etwas in dieser Richtung gemacht hat |
Warten wir mal eine Antwort ab.
Damit ich selber auch was lerne:
Zitat :
| Der benötigt dann für die Dateneingabe drei IO-Pins. |
Takt, Daten, Enable? (edit: unverständlichen Satz beseitigt)
[ Diese Nachricht wurde geändert von: bastler16 am 2 Jan 2008 16:37 ]
|
BID = 487072
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Moin,
Zitat :
|
Das Programm lässt sich vermutlich auch in Bascom schreiben, dann ist die Display-Ansteuerung kein Problem. Wenn es eine Art "case"-Anweisung gibt wirds noch einfacher.
|
Das würde ich in diesem Fall auch raten, C oder ASM führen da sehr schnell zu Wutanfällen .
Zitat :
|
Meinst du per RS232? Das müsste dann auch programmiert werden. Wenn sich die Daten sehr selten ändern kann man einfach den Quelltext anpassen und den µC neu flashen. |
Korrekt.
Würde beides gehen, aber ersteres wäre servicefreundlicher.
Einfach Gerät an Rechner, bestimmtes Programm laden und Muster einstellen. Das wird dann an den µC gesendet und von einem kleinen Teilprogramm kontrolliert ins Flashrom geschrieben. Oder ins EEPROM.
Neu flashen wäre die zweite, einfacherere Möglichkeit.
Zitat :
|
Takt, Daten, Enable? Die ICs sind dann wohl "in Reihe" geschaltet, d.h. die Daten werden einfach in den µC durchgetaktet. Ist das deine Idee?
|
Takt und Daten stimmen, Enable nicht.
Statt Enable nimmt man sowas wie Latch, also, die Daten werden dann alle zur gleichen Zeit in die Register übernommen und nacheinander ausgetaktet. So kann sich kein Bitfehler einschleichen.
Wobei das hier eigentlich fast überflüssig wäre.
_________________
|
BID = 487074
Racingsascha Schreibmaschine
Beiträge: 2247 Wohnort: Gundelsheim
|
Wie wärs mit 6x 74LS86 (4x EXOR)? Den einen Eingang an die Schalter, den anderen an je einen Schalter eines DIP-Switches. Der Ausgang geht nur auf Low, wenn die beiden Eingänge vom Pegel her gleich sind. Man stellt die Dipswitches so ein wie die Löcher sein sollten (1=Loch, 0=kein Loch) und kuckt, ob alle LEDs, die von den EXOR-Ausgängen gegen Masse geschaltet werden, leuchten. Wenn ja, sind alle Bohrungen ok, wenn nicht, stimmt was nicht. Anstelle der Dipswitches könnte man auch so eine Art Programmierstecker, der die Ausgänge auf High/Low zieht, anfertigen, das beschleunigt das Einstellen der verschiedenen Varianten und ist zuverlässiger.
_________________
Fnord ist die Quelle aller Nullbits in deinem Computer.
Fnord ist die Angst, die Erleichterung, und ist die Angst.
Fnord schläft nie.
[ Diese Nachricht wurde geändert von: Racingsascha am 2 Jan 2008 16:47 ]
|
BID = 487080
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Genau das macht der µC auch, nur etwas schneller...
_________________
|
BID = 487082
Ravenclaw Gerade angekommen
Beiträge: 4
|
Hallo,
und dickes Dank für die vielen Antworten.
Also, die eigentliche Prüfvorrichtung besteht aus 24 Micro-Schaltern, die offen bei "Bohrung vorhanden" sind, und geschlossen bei "Bohrung fehlt".
Die ganze Vorrichtung mit den Micro-Schaltern wird von Hand mit einer Zentriervorrichtung auf das zu prüfende Teil gesteckt. Die Bohrungen liegen eng beisammen und der ganze Block mit den Endschaltern ist ca. 10 x 10 + 15 cm groß.
Die Kosten für die Vorrichtung sind nicht so kritisch, denn wenn uns nur ein falsches Bauteil durch die Kontrolle schlüpft, dann kostet es uns richtig.
Also 500-1000€ wären akzeptabel.
An Varianten sind momentan 11 aktiviert... ein paar mehr kommen noch hinzu. Nach meiner Berechnung wären 576 Möglichkeiten vorhanden. Aber wie gesagt, nur die 11 Richtigen brauchen wir zur Zeit, der Rest muss als Ausschuss erkannt werden.
Ein Display wäre OK, aber zur Not würden es auch einige LED's tun.
11 Led's ( + ein paar Reserve) für die Erkennung welche Variante verbautwurde - eine für "Variante unbekannt).
Und DonComi, Deine Lösung klingt gut. Ich werde morgen mal Testen ob sich unserem Betriebs-Industrie-Elektoniker dabei die Haare sträuben.
Ich selbst bin wie gesagt Maschinenbau-Konstrukteur der seine Elektronikkentnisse aus seinem Amateurfunk-Hobby hatte.
Bis morgen dann ( ich hab jetzt Feierabend )
Danke nochmal an alle
|
BID = 487208
Jornbyte Moderator
Beiträge: 7178
|
Zitat :
| 100€? Was ist da so teuer? |
Von der Herstellung der Leiterplatte über die Bestückung bis hin zum Industrie taugichen Gehäuse kommt das zusammen.
Zitat :
| Das Programm lässt sich vermutlich auch in Bascom schreiben, dann ist die Display-Ansteuerung kein Problem. Wenn es eine Art "case"-Anweisung gibt wirds noch einfacher.
Das würde ich in diesem Fall auch raten, C oder ASM führen da sehr schnell zu Wutanfällen .
|
kann ich so nicht bestätigen.
Zitat :
| Wie wärs mit 6x .... |
dieser Vorschlag ist nicht akzeptabel. In der Industrie sind andere Anforderungen. Eine "Bastellösung" kann da nicht zum Einsatz kommen.
@Ravenclaw
wie wird das "Prüffeld" angeschlossen? Stecker, Buchse? Hersteller und Pinbelegung sind da wichtig.
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|
BID = 487214
Jornbyte Moderator
Beiträge: 7178
|
Zitat :
| An Varianten sind momentan 11 aktiviert...
Nach meiner Berechnung wären 576 Möglichkeiten vorhanden. |
Das sind aber 2047 Möglichkeiten.
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|
BID = 487215
DonComi Inventar
Beiträge: 8605 Wohnort: Amerika
|
Zitat :
Jornbyte hat am 3 Jan 2008 00:11 geschrieben :
|
Zitat :
| Das Programm lässt sich vermutlich auch in Bascom schreiben, dann ist die Display-Ansteuerung kein Problem. Wenn es eine Art "case"-Anweisung gibt wirds noch einfacher.
Das würde ich in diesem Fall auch raten, C oder ASM führen da sehr schnell zu Wutanfällen .
|
kann ich so nicht bestätigen.
|
Du weißt, dass ich selten empfehle, Basic (Bascom Basic) zu verwenden.
Ich persönlich würde hier C nutzen, aber dem Fragesteller habe ich damit nicht geholfen (wobei, mit dem Hinweis auf Basic auch nicht... )
Edit:
Wutanfälle bekommt man nicht, wenn man die Sprachen beherrscht, sondern wenn man sie für ein Projekt lernen müsste...
Man könnte anstelle der 3 Schieberegister auch einen Mikrokontroller nutzen, der ein paar mehr IO-Pins besitzt, es gibt viele, die weitaus mehr als 24 Stück haben. Somit ließe sich die Sache hardwaremäßig verkleinern.
Die Software würde ich persönlich mit C schreiben...
_________________
[ Diese Nachricht wurde geändert von: DonComi am 3 Jan 2008 0:39 ]
|
BID = 487216
Jornbyte Moderator
Beiträge: 7178
|
Zitat :
| Man könnte anstelle der 3 Schieberegister auch einen Mikrokontroller nutzen, der ein paar mehr IO-Pins besitzt... |
Dazu ist meine Frage zu beantworten (Stecker / Buchse). Dies enscheidet darüber.
_________________
mfg Jornbyte
Es handelt sich bei dem Tipp nicht um eine Rechtsverbindliche Auskunft und
wer Tippfehler findet, kann sie behalten.
|
BID = 487248
Ravenclaw Gerade angekommen
Beiträge: 4
|
Hallo Jornbyte
Zur Wahl des Kabels / Steckers sind wir völlig offen.
Es muss nur Werkstattgerecht ( also robust ) sein.
Am liebsten hätten wir allerdings alles direkt auf unseren Endschalterblock aufgesetzt. Also Verkabelung nur im inneren.
Übrigens 24 hoch 2 = 576 Möglichkeiten ( oder habe ich da nen Denkfehler )
Danke
|