theo hat geschrieben:Aber ist es denn nicht so, dass beim AVR der begrenzte Speicher und die begrenze Performance es verhindern, ein bequemes API zu benutzen? (Arduino IDE ist euch ja offenbar zu wenig optimiert).
Wenn man bedenkt, dass ein atMega328 32 KB Flash hat und 2 KB RAM.
Oder ein atTiny mit 8 KB Flash....
Hier muss man wohl immer ein Kompromiss eingehen. Ich bin schon sehr oft an die Grenzen gelangt, was mit Arduino ohne Experten Wissen möglich ist.
theo hat geschrieben:Hätte denn der Raspi nicht genügend Speicher und Leistung um es dort einfacher für den Benutzer (Programmierer) zu machen?
Klar. Hier hast du sogar die wahl der Sprache. Für den ESP8266 gibt es z.b. auch eine Python Variante.
Jedes von den beiden Devices hat seine Berechtigung.
Der AVR ist kleiner, spartanischer und lässt sich gut im Microchip Bereich verwenden. Signalaufzeichnungen, Protokollieren, Messen und das mit geringen Einsatz und auch mit wenig Stromverbrauch. Deswegen auch der Einsatz als intelligentes Messgerät. Das geht auch im Bereich der Akkubetrieben Geräte, wenn man es richtig designed. Den kann man komplett schlafen schicken und wieder aufwecken.
Der RasPi hat sich zu einem stromfressenden Rechner gemausert, der dafür auch Verarbeitung der höheren Art kann, hat aber doch auch relativ viele Schnittstellen die sich teilweise mit dem Arduino überschneiden. Dafür ist er Speicherstark, hat hohe Rechenleistung und ist auch optimal um günstig Personen an die Programmierung heran zu führen, die sich keinen 100tete Euro teuren Rechner leisten können. Allerdings schaut es schlecht aus, wenn du den aus nen Akku betreiben willst. Geht natürlich, aber mit ganz anderen teuern Resourcen als beim AVR.
Was noch für AVRs spricht, ist der günstige Preis und seine Grösse.
Die SMD Varianten sind sehr klein.
Und wollt ihr etwa einen pi in einer Kaffeemaschine verbauen ?
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Was macht ihr eigentlich konkret, privat mit diesen Gerätchen?
Ich finde die paar Experimente, die ich bisher gemacht habe ja ganz lustig, aber ein richtiges Projekt hat sich mir bisher privat nicht aufgedrängt.
Erzählt doch mal.
Ich möchte nicht unbedingt aufgezählt bekommen, was man damit machen kann, sondern was ihr macht.
Steuerung für Zwave Homeautomation (Licht, Rolladen, ....)
AVR:
Herumspielen, Batterieüberwachung im Wohnwagen (LIN-Bus), mein 3D Drucker (RF2000V2) ist Arduino basierend (da will man ja auch ein wenig verstehen). Bau gerade eine Heizungssteuerung damit ich die Hotends auch selbst reparieren kann https://www.designuitinspiratie.nl/hot-end-thermostaat/
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Mein erstes Project war einen Messkartenersatz, welcher inklusive des Nanos nicht mal 10.- kostet. 16 Bit Messgenaugkeit.
Und diese war zig mal besser als die Industriekarte, welche über 500.- kostete.
Ein Yatzee Spiel.
Uhr für eine Modelspielandschaft.
Saugersteuerung mit Lichtschranke und Timer.
Licht und Objeksteuerung für Modelllandschaft.
Laufschrift.
Feuriger Draht.
Und viele Experimente.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Ich versuch mal meine Projekte grob zu beschreiben:
1. Ich verarbeite 433 mhz Daten, die ich von 433 mhz Sendern erhalte. Auf diese Sender habe ich kein Einfluss.
Bei jedem Batterie Wechsel ändern sich die ID. Im Prinzip müsste ich hier auf den Kanal achten, nur davon gibt es in der regel 3 Stück pro Sender.
Der Empfänger ist inzwischen an einem Pi4 angeschlossen, wo Node-Red drauf läuft. Die Daten kommen dann direkt in MQTT rein.
Den Teil würde ich gerne noch auf Lazarus ändern. Habe auch inzwischen ein MQTT Client gefunden, der scheinbar für meine zwecke geeignet ist.
2. Wir haben Mitte Februar ein Smart Meter mit Optischen(Infrarot) Ausgang bekommen.
Einer im Verein(KTT) hatte dazu gleich eine Passende Schaltung parat, nach einigen Test(und einer Änderung), klappte es damit.
Diese Schaltung, Wandelt die IR Signale um, in TTL Serial Signale. Ein Uart speist die Daten in einen Pi Zero ein, wo ebenfalls node-red drauf läuft. Dieser Sendet die Daten an den MQTT Server auf meinem PI4.
3. ich habe eine USB Wetterstation im Einsatz, nicht selbst gebaut, aber ich kann die Daten selbst Verarbeiten.
Die Daten lade ich mit einer Python Umgebung runter zwei mal am Tag und lade sie per Cron-Job an meinem PC. Hier speise ich die Daten in eine MariaDB und auf die hat Grafana Zugriff(Um die Daten zu Visualisieren).
4. Ich hatte mir mal mit einem Wemos D1 Mini ein MPD Client gebaut, inzwischen ist der aber Nutzlos, da ich mein eigenen Musik Player Server verwende.
5. Ich habe einen weiteren Wemos D1 Mini im Einsatz, wo ein BME280 angeschlossen ist.
Nun plane ich noch weitere Eigene Funk Sensoren(433 mhz, wobei 2,4 ghz wäre wohl auch nicht schlecht). Hier möchte ich testen, ob eine 18650 länger hält oder 3 doppel A Batterien. Bei der "fast" gleichen Schaltung.
Hier möchte ich einen atTiny85 verwenden. Für die Basis Station ein atMega328(Vielleicht ein Nano, oder ein eigenes Bord).
Ich möchte nicht unbedingt aufgezählt bekommen, was man damit machen kann, sondern was ihr macht.
Ich betreibe ein paar als Web- und Applikation-Server für private Projekte. Und einen habe ich an einen 20"-Touch-Screen gehängt und mit Lazarus eine Oberfläche zu Anzeige verschiedener Daten gebaut. Meine aktuellen Termine, das Wetter, Abfahrtszeiten der umliegenden ÖPNV-Haltestellen, ...
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
Ich habe einen Baukasten erstellt, welcher einen HAL (Hardware Abstraction Layer) beinhaltet, um ein und denselben Sourcecode für verschiedenen Atmel uC zu compilieren.
Dazu gibt es viele Treiber für Hardware wie WIZNet Netzwerk-Module, Displays, Sound Modle, FTDI USB-Master VDIP1 usw.
Das hatte ich mit BASCOM umgesetzt, weil es einfach einfach ist, damit sofort loszulegen.
Es bleibt aber in keiner Sprache aus, dass man sich eingehend mit den Interna der Prozessoren und externen Hardware beschäftigen muss. Hinzu kommen dann teilweise fundierte Kenntnisse von Netzwerkprotokollen im Fall von z.B. WizNet Netzwerkbausteinen o.ä.