Hallo! Im Rahmen einer Projektarbeit soll eine kleine Anlage gesteuert werden, die aus verschiedenen (eigenständigen) Stationen besteht. U.a. ein Hochhregallager, ein Förderband, ein Probenbagger und ein Verschlußsystem. Die Idee war jetzt, die einzelnen Stationen mit einer eigenen Intelligenz sprich Mikrocontroller zu versehen. Die Kommunikation soll über den CAN-Bus passieren. Nach Möglichkeit sollen die Module alle in etwa gleich aufgebaut sein, also CAN-Schnittstelle, Mikrocontroller und Ansteuerung für elektromechanik wie Pneumatik-Ventile oder Motoren. Jetzt meine Frage: Welche(n) Controller nehmen? AVR ist wegen vorhandener Programmierkenntnisse in AVR-GCC bekannt. Das wäre also ein AVR (mega32 oder so) + SJA1000. Oder ein (für mich auf den ersten Blick schwer beschaffbarer) AT90CAN128. Oder ein T89C51CC01, dessen 8051-Architektur durch µC-Labore und entsprechende Laboringenieure auch bekannt ist, aber bisher noch nicht näher beleuchtet wurde (ISP, Bootloader etc). Zu welcher Variante würdet Ihr mir raten? Ich würde bei einem externen CAN-Controller den SJA1000 wählen, weil der von Microchip nur per I²C-Bus ansprechbar ist. Würde zwar Ports sparen, wäre aber auch fehlerträchtiger bzw. unübersichtlicher. Vielen Dank im Vorraus. Ich werde mir auf jeden Fall mal die entsprechenden Datenblätter äher ansehen bzw. habe es schon getan (SJA1000). Gruß Rahul
Ich spiele auch gerade ein wenig mit dem 90CAN128. Gibts problemlos.
@crazy horse, wo krieg ich den 90can128 her? reichelt - nein conrad - nein ???
es gibt mittlerweile einige günstige PIC-Controllern mit integriertem CAN. Schau mal unter PIC18Fxxxx. Der externe CAN-Baustein MCP2515 hat übrigens eine SPI und keine IIC Schnittstelle.
ich benötige keine pics sondern nur den at90can128! wo bekomme ich den her? weiß das jemand?
Wieviele brauchst du? Bestelle demnächst wieder welche.
@leopold ich meine auch nicht Dich, sondern Denjenigen, der den Thread eröffnet hat!
@Jangomat: PICs werden wohl nie einen Einsatz bei uns finden werden, da sie keinen Fürsprecher haben. Ob SPI oder I²C ist egal, da seriell. Mein Anliegen ist entweder parallele Ansteuerung oder integrierter CAN-Controller. @Crazy Horse: Wo bestellst du die Dinger? Ich habe hier eine eigene Einkaufsabteilung (LaborIng. der FH), und komme so vermutlich auch in den Genuß, bei Firmen zu bestellen, die Privatpersonen nicht beliefern. Es handelt sich schliesslich auch um FH-Projekt. Für mich privat wären 2 vermutlich interessant... Gruß Rahul
was kostet denn ein exemplar vom 90can128? wo bestellst du sie? lg leo
Hi, ich möchte nicht darüber diskutieren welcher der bessere Controller ist, sondern nur anmerken, dass ich den T89C51CC01 schon mehrfach ohne Probleme eingesetzt habe. Besonders das IS-Programmieren über RS232 oder CAN gestaltet sich sehr komfortabel. Gruß, Matthias
Hallo Matthias! über solche Beiträge freue ich mich. Eigentlich wollte ich nur soetwas lesen bzw. Erfahrungsberichte von Leuten, die vielleicht schon die verschiedenen Controller eingesetzt haben. Ich möchte einfach nicht 170 Seiten Datenlatt durchackern, um dann festzustellen, dass mir ein anderer Baustein vielleicht besser gefallen könnte. Momentan favorisiere ich allerdings eher den AT90CAN128, da ich bisher mehr mit AVR als mit 8051-Controllern zutun hatte. Und sich auch ein STK500 in meinem Privatbesitz befindet. Der 8051 (oder besser 80C537) wird bei uns im Rahmen des Mikrocontroller-Labors im 6. Semester eingesetzt, wobei dort auf längere Sicht auf ein anderes System (AVR mit Bootloader) ungestiegen werden soll, da die Entwicklungsumgebung auf der PC-Seite leider nur noch im DOS-Fenster läuft. Durch diese Laborversuche ist mir (und meinem Projektkollegen) aber auch wieder diese Architektur bekannt. Und da wäre wieder der Grund für diesen Thread: Welche Architektur? Dass der Chip höchstwahrscheinlich irgendwas mit Atmel zutun hat ist aber sicher. Wie wird der T89C51CC01 eigentlich zu erst programmiert? Via ISP? Ist das die Methode irgendwie AVR-kompatibel bzw. -ähnlich (naja, ähneln tun sie sich alle...) Da werde ich wohl mal nachforschen müssen. @Crazy Horse: Wie Programmierst du den AT90CAN128? Via STK501, oder Selbstbau-ISP? Vielen Dank, dass Ihr Euch an dieser Entscheidung beteiligt! Gruß Rahul
ich programmiere die mit dem JTAG, geht aber auch mit jedem ISP-Programmer. Im Moment habe ich nur 10 Stk, davon gibts keine. Ich frage morgen mal nach (falls ichs nicht vergesse :-)
Ja, der T89C51CC01 wird über ISP programmiert. Von Atmel gibt es ein Tool namens FLIP, mit dem das sehr komfortabel möglich ist. Das Protokoll ist aber offen und einfach zu implementieren, wir haben für unsere Geräte selbst eine Tool zum Programmieren geschrieben da man das Flip keinem Dau zumuten kann :) Die Methode ist jedoch nicht mit der AVR-ISP kompatibel. Ich gehe davon aus, dass du in C entwickelst, dann ist es eigentlich egal, welchen Controller du benutzt. Freie Compiler und IDEs gibt es für beide Familien. Wobei man sagen muss, dass der Code der kommerziellen Compiler (z.B. Keil im Vergleich zu SDCC oder iccavr im Vergleich zu GCC) wesentlich kompakteren Code erzeugen. Ich denke jedoch, dass der AVR im Internet eine größere Community besitzt. Gruß, Matthias
"Der 8051 (oder besser 80C537) wird bei uns im Rahmen des Mikrocontroller-Labors im 6. Semester eingesetzt, wobei dort auf längere Sicht auf ein anderes System (AVR mit Bootloader) ungestiegen werden soll, da die Entwicklungsumgebung auf der PC-Seite leider nur noch im DOS-Fenster läuft." Das liegt aber nicht am 8051. Es gibt doch schon längst was moderneres, z.B. mit CAN, 12 Bit ADC usw.: http://www2.silabs.com/tgwWebApp/appmanager/tgw/tgwHome?_nfpb=true&_pageLabel=GenericContentPage&contentObjectId=/public/web_content/products/Microcontrollers/en/C8051F040DK.htm Besonders der JTAG-Debugger ist geil, ideal für die Schule. Allerdings braucht man selten sowas High-End. Deshalb setzten wir auch nur den T89C51C01 ein. Der Bootloader ist bereits ab Werk drin, je nach Bestellbezeichnung entweder über CAN oder UART. Peter
Guten Morgen @crazy horse: Hat sich bei denn 90CAN128 schon was getan? Würde gern auch welche haben wollen. Mit was für einem Preis muß ich Rechnen und sind überhaupt welche verfügbar? Gruß Topsoft
Ich würde mich, in abhängikeit vom Preis auch an einer Sammelbestellung beteiligen wollen. Werner
Guten Tag Der MCP2515 von Microchip fällt meines Erachtens zu Unrecht in Ungnade. Gerade für Steuerungsaufgaben in kleinerem Rahmen ist er ideal, da er nur den SPI-Port belegt. Die übrigen CPU-Ports sind dann für die eigentliche Applikation verfügbar. Geschwindigkeit ist kein Thema, bei 1Mbit/s Busgeschwindigkeit und 4MHz Transferrate auf dem SPI. Programmiertechnisch ist er einfacher zu handhaben als der AT90CAN128, zumal es gut kommentierten freien C-Source von Microchip gibt. Zum schnellen Einstieg gibt es hier einen kleinen Adapter: http://www.avrcard.com/products/can_adapter.htm Hans
Moin! Ich finde es ja wirklich gut, dass sich dieser Thread so interessant entwickelt. Durch den Beitrag von Hans wird die Entscheidung noch mal schwieriger, da der MCP2515 auch relativ einfach (Reichelt) beschaffbar ist. Leider konnte ich bisher keinen Anbieter finden, bei dem ich den At90CAN128 ohne einen Mindestumsatz von 125 Euro erwerben konnte. Gruß Rahul
Hallo, der MCP2515 ist Spitze und bei mir am PC und im Auto im Einsatz nur gerade bei Reichelt nicht lieferbar, Ende der Woche soll es wahrscheinlich wieder welche geben. Aber den AT90CAN128 würde ich auch gern mal unter die Lupe nehmen. Ein Mindestumsatz von 125 sollte kein Problem sein nur wo bekommt man den her?
habe gerade mal beim Distributor ( MSC ) angefragt. Die AT90CAN128-16AI kommen Q4/04 oder Q1/05. Gruss Steffen
Hi Rahul, schau dir mal das TinyARM Modul an unter http://www.elektronikladen.de/tinyarm.html du hast dabei einen 32 Bit ARM(LPC2129) mit Analog/Digital/2xCAN, 32-Bit Architektur, 60MHz, seriellen Bootstrap-Loader, RS232, I2C, SPI,... das alles zu einem Preis, bei dem ein Selbstbau nicht mehr rentabel ist. Alternativ findest du dort auch ein fertiges Modul mit AVR und CAN (CANDIP). Ich arbeite selbst mit der etwas grösseren ARM-Variante(LPC2194) und bin damit vollauf zufrieden. Für die LPC2xxx Familie ist ein ARM-GCC (WinARM) mit gleichem Aufbau wie der WinAVR verfügbar. Gruss, Peter
Moin! Damit dieser Thread mal ein Ende findet wurde folgende Entscheidung getroffen: An einen ATmega32 wird der MSP2515 angeschlossen (und daran der Bus-Transceiver). Warum? Der SJA1000 braucht diverse Pins am Host-Controller, was entweder Pin-Verschwendung ist, oder schaltungstechnischen Mehraufwand bedeutet. Für AVR sind Entwicklungsumgebungen bekannt und vorhanden (ISP-Programmer von Welzel und STK500). Für die anderen Chips (sofern auftreibbar) müsste erst Programmierhardware hergestellt oder beschafft werden. Und Geld ist halt immer knapp. Fertige Module kommen auch nicht in Frage, da es sich um eine Entwicklungsaufgabe im Rahmen des Mechatronik-Studiums handelt, und ein komplettes System entwickelt und nicht nur programmiert werden soll. (Naja, wir hätten auch eine SPS nehmen können...) Mein Ziel ist es, ein Modul zu entwickeln, das man vielseitig einsetzen kann. Der MSP erfordert zum Glück ja auch nur 3-4 Pins je nach Beschaltung: Wenn der SPI-Bus noch für andere Bausteine verwendet werden soll, muß man halt die /CS-Leitung steuern, sonst braucht man nur 3 Pins. Ausserdem ist da noch das Handling: der MSP ist als DIP zu haben. Der AT90CAN128 nur als VQFP (oder war das der T89S51CC0x?; auf jeden Fall ist der AT90S128 nicht so einfach wie der MSP zu beschaffen). Dann wäre da noch der Preis: ATmega + MSP ~ 10 Euro, T89S51CC0x >11. Ich freue mich, dass sich so viele Leute an dem Thread beteiligt haben (auch wenn einige Beiträge etwas am Thema vorbeigingen). Vielen Dank noch mal Herzlichen Gruß Rahul
Hi, womit kann man den AT90CAN128 den flashen, mit PonnyProg oder mit Jaap? Wo gibt es denn die Librarys für die CAN - Schnittstelle? MFG, Thomas
Nur der Vollständigkeit halber: Intel 82526 Intel 82527 http://www.semiconductors.bosch.de/de/30/networking/networking.asp Bosch CC750 ASIC4548 272230455 272 239 455 Marking 30455 0330/03 C7696.1 SOIC16 W nur SPI-Interface http://www.semiconductors.bosch.de/pdf/CC750_TechData.pdf Bosch CC770 ASIC4549 272230480 272 230 480 Marking 30480 01/5002 C7172.7 PLCC44 SPI- und Parallel-Interface, 2x 8bit I/O http://www.semiconductors.bosch.de/pdf/CC770_TechData.pdf Distribution: Rutronik
@Rahul: Erarbeite gerade einen CAN-Bus mit Philips LPC2129 (ARM7), die 2 integrierte CAN-Controller haben (etwa SJA1000-kompatibel, aber besser handhabbar, da kein externer Bus, weil im LPC2129 integriert). Bei Keil gibt es dazu 2 sehr gut funktionierende Demo-Softwarepakete CAN-Full und CAN-All, kostenloser Download von deren Homepage, womit man schon auf Anhieb arbeiten kann. Die kannst du als Ausgangsbasis verwenden und weiter ausbauen, klappt bei mir hervorragend. Gruß Dietmar
Das Projekt für das ich den CAN-Controller brauchte, hatte ich zwischenzeitlich an eine andere Projektgruppe abgegeben. Die Anlage wird im Juni endlich dem Auftraggeber übergeben. Als Controller hatte ich mich für den MCP2515 entschieden. In einem kleinen Netzt vor 2 Controllern lief das System auch - inzwischen ist der CAN-Bus rausgeflogen und durch eine serielle Schnittstelle ersetzt worden. Der CAN-Bus war halt damals in Betracht gezogen worden, weil das Ausmaß der Anlage noch nicht komplett absehbar war - einige Baugruppen waren noch nicht mal komplett durchdacht, und brauchten schon eine Steuerung...
@Rahul: So ist das manchmal im realen Leben...... Gruß Dietmar
@Rahul: Noch was, hätte ich fast vergessen: Wenn du in Energieverbrauch und Spannungsversorgung allgemein mal etwas herunterkommen möchtest, sind natürlich die Philips LPC2000-Serien (ARM7) erste Wahl, denn sie arbeiten mit 3,3V. Passend dazu die CAN-Transceiver von Texas Instruments SN65HVD233, 234 oder 235, ebenfalls 3,3V. Gruß Dietmar
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.