Ich habe eine alte Steuerkarte von einem PC, der einige Schrittmotoren steuern musste. Aber es gibt mehrere Probleme damit:
Aber nachdem die Schaltung nur aus 8 ICs und 6 Kondensatoren besteht und jeder Draht auf der Platine klar dargestellt ist, möchte ich versuchen, die Karte zurückzuentwickeln, weil wir die angesteuerten Geräte wieder verwenden wollen.
Daher meine Idee zur Lösung des Problems:
Ist das ein sinnvoller Ansatz? Wenn nein, was kann ich sonst tun?
Das Problem dabei ist, dass sich auf dieser Platine (P8255A) zwei programmierbare ICs befinden und ich nicht über die interne Programmierung verfüge. Daher meine zweite Frage: Gibt es eine Möglichkeit, die Programmierung dieser ICs herauszuholen?
Bearbeiten: Was ich möglicherweise nicht vollständig angegeben habe, ist, dass ich das Datenblatt für die Schrittmotoren nicht einfach bekommen kann, es gibt immer noch einen Controller zwischen den Schrittmotoren und meiner Karte, und alle Schrittmotoren sind in ein Spektrometer eingebaut, wo ich keinen Zugriff haben...
Bearbeiten 2: Einige Bilder:
Vorderseite:
Der Rücken:
Das P8255A hat keinen internen Programmspeicher – jegliche „Programmierung“ erfolgt extern, Sie brauchen sich also nicht darum zu kümmern – das Programm im PC ist der Ort, an dem die Konfiguration vorgenommen wird.
Das Reverse Engineering einer solchen alten Karte sollte möglich sein. Wenn es sich um eine Edge-Connector-ISA-Karte handelt, ist es nicht besonders billig, eine neue Karte herstellen zu lassen. Möglicherweise verstoßen Sie gegen einige Urheberrechtsregeln, wenn Sie die Software mit Ihrer eigenen Karte verwenden, aber ich lasse Sie dieses (nicht technische) Problem untersuchen. Früher gab es Perfboards mit einem ISA-Randsteckmuster darauf. Mit nur 8 ICs könnte es leicht in ein oder drei Stunden mit Magnetdraht auf einem Perfboard verdrahtet werden, aber es wäre leicht, etwas zu übersehen und eine Menge Zeit für die Fehlersuche zu haben.
Bearbeiten:
Auf Ihrer Platine haben sie sich nicht die Mühe gemacht, Lötstoppmasken oder Vergoldungen an den Randsteckerkontakten zu bekommen. Ziemlich infra-dig, aber ich denke, es hat eine Weile funktioniert. Sogar Goldblitz wäre besser.
Hier ist das Vector-Prototyping-Board Nr. 4613-1, Digikey hat noch 15 auf Lager (aber sie werden nicht nachbestellt).
Holen Sie sich die Datenblätter für die Schrittmotoren und beginnen Sie mit einer neuen Hardwareschnittstelle und Software von vorne.
Ich sage das, weil Ihre Festplatte tot ist und Sie daher unmöglich die Feinheiten erfahren können, die die PC-Karte beim Ansteuern der Motoren gemacht hat. Das P8255A ist eine programmierbare Peripherieschnittstelle und nimmt Befehle von der Software entgegen, die auf dem PC läuft, und wie gesagt, Sie wissen nicht, wie das funktioniert.
Der "interessante" Teil, der Ihre Zeit wert ist, beginnt an dem, wohin dieses Kabel führt, und kommt zu dieser Platine zurück, wo es mit dem wirren 7407 und dem 40-poligen DIP verbunden wird. Ist an der Buchse auch etwas dran?
Beginnen Sie mit einem Blockdiagramm. Eine Box für jeden IC, mit Sinn für die Zusammenhänge. Holen Sie sich Datenblätter für die ICs und fügen Sie die IC-Diagramme in einen Arbeitsbereich (physisch oder digital) ein und skizzieren Sie die Verbindungen. Je näher Sie den Goldfingern kommen, desto weniger Details möchten Sie. Dieses Teil ist etwas, das Sie kaufen.
Das Board ist halb kundenspezifisch - der 7407 unter einem 40-Pin-DIP befindet sich in einem "Prototyping-Bereich". Sie möchten einen genauen Schaltplan, wo jeder Draht im Kabel hinführt und was diese Punkte dann tun. Der gesamte Prototyping-Bereich. Sobald Sie das haben, können Sie nach einem anderen kommerziellen Produkt suchen, das dieselbe Schnittstelle zu demselben 40-poligen DIP (P8255?)
Entwickeln Sie den Rest der Platine nicht zurück. Das erfindet den Weißwandreifen neu. Kein Wert. Es bietet eine Busschnittstelle zum 40-poligen DIP. Die Verkabelung und 7407 sagen Ihnen, was das DIP tut. Die Software zum Einstellen und Betreiben des Dings wird dadurch definiert, welche Signale das Kabel hinaufgehen.
"Simulation" ist eine Art CSI-im-Fernsehen-Zeug - es gibt etwas, das so aussieht, aber dort wird nicht die eigentliche Arbeit geleistet.
am nächsten Tag hinzugefügt: Ich habe noch keine 'Kommentar'-Privilegien ... anscheinend!
Danke dir! Es ist schön, sich nützlich zu fühlen. Eine schnelle Google-Suche nach „XT Peripheral 8255“ liefert Bilder einer Reihe anderer Platinen mit ähnlichen Chipsammlungen, von denen eine einen Prototyping-Bereich hat: http://www.pci8255.net/windows-2.htm . Dort gibt es auch einen Link zu einem 8255-Datenblatt, Tutorial-Zeug.
Der Katalog der gleichen Firma http://www.pci8255.net/catalog.htm enthält eine Schrittmotorsteuerung und Software ist für Windows und Linux verfügbar.
Suchen Sie nach „pci 8255“ und Sie finden Pressemitteilungen aus dem Jahr 2001 und Produkte, die jetzt im Bereich von 200 $ und darunter erhältlich sind. Sieht so aus, als wäre es kein Problem, einen 8255 in diesen Bus zu bekommen. Nächste Frage: Ist das der Bus, in dem du sein möchtest? Vielleicht möchten Sie USB oder was auch immer in Standard-PCs am beliebtesten ist, die morgen auf den Markt kommen.
Suchen Sie nach „Schrittmotor“ und dem Bus Ihrer Wahl, vielleicht finden Sie eine Komplettlösung. Sie benötigen jedoch auf jeden Fall eine vollständige Skizze dieses Kabels und die Verbindung zum 8255. Und über die Schnittstellenkarte zu den Motoren.
Da Sie sagen, dass sich zwischen der PC-Karte und den Schrittmotoren ein weiterer Controller befindet, würde ich versuchen, das Protokoll zu ermitteln, das zur Steuerung dieses anderen Controllers erforderlich ist, und den besten Weg ermitteln, mit der aktuellen Technologie mit diesem Controller zu kommunizieren.
Ihr Ansatz scheint nützlich zu sein. Das Zeichnen von Schaltplänen ist der erste Schritt beim Reverse Engineering. Allerdings hilft nur eine Simulation nicht viel bei der Untersuchung der richtigen Reize. Sie müssen das Schema entschlüsseln und verstehen, wie es mit Ihrem eigenen Gehirn funktioniert.
„Programmierbar“ in P8255A bedeutet nicht, dass es werkseitig vorprogrammiert ist. Es wird vom Treiber bei jedem Start programmiert. Das Datenblatt gibt Ihnen eine Vorstellung davon, wie es gemacht wird (sollte). Die Programmierung des 8255 ist ziemlich einfach: Es gibt einen Satz von vier Registern, drei sind direkt den Ports A, B, C IO-Pins zugeordnet, und eines steuert den Betriebsmodus. Ich nehme an, dass Schrittmotortreiber direkt mit den Pins (A, B, C) des Ports verbunden sind. Bits in Portregistern würden also nur entsprechende Spulen ein- / ausschalten.
Dzarda
arc_lupus
Dzarda
arc_lupus
Connor Wolf
arc_lupus