Hallo Communitiy, ich habe vor mein eigenes Autoradio mit folgenden Funktionen zu programmieren. - Daten via OBD2 Schnittstelle aus zu lesen und an die richtigen Stellen einsetzen - die Funktionen der Button sollten selbst erklärend sein :) der Miniplayer soll nur eine art Widget sein, der richtige Player befindet sich im Mediacenter.. durch den Button "Klappe" soll ein Relai angesteuert werden. Mein Gedanke war ein Raspberry Pi 3 b mit GPS, einer passenden Soundkarte und obd2 Auslesegerät.. Jedoch scheitert das Projekt wahrscheinlich schon am realisieren der Grafik im Anhang.. Könntet ihr mir weiter helfen, wie ich mein/dieses Projekt programmieren kann? (möchte gern mein Design, wie auf dem Bild nutzen) Ja, die Betriebserlaubnis des Fahrzeuges wird dadurch erlöschen. Ein Tablet oder ein Androidradio möchte ich nicht verbauen :) über hilfreiche Antworten würde ich mich freuen :)
:
Verschoben durch User
Michele96 schrieb: > ich habe vor mein eigenes Autoradio : Der Aspekt Radio ist durch blosses so Beschriften einer Schaltfläche wohl ganz untergegangen... oder abgedeckt. > über hilfreiche Antworten würde ich mich freuen :) Würdest wirklich? Ausser es ist hier im uC Forum? Vielleicht aber doch, jedoch wohl nicht lange... :-(
Michele96 schrieb: > Mein Gedanke war ein Raspberry Pi 3 b mit GPS, einer passenden > Soundkarte und obd2 Auslesegerät.. Warum nicht einfach ein CAN Modul? Oder gleich einen SBC mit CAN-Funktionalität nutzen? Es gibt auch Mikrocontroller mit genug Leistung für Grafik-Displays und CAN-Schnittstelle, z.B. STM32F7. Ist dann halt mehr Programmieraufwand.
> Warum nicht einfach ein CAN Modul? Oder gleich einen SBC mit > CAN-Funktionalität nutzen? Es gibt auch Mikrocontroller mit genug > Leistung für Grafik-Displays und CAN-Schnittstelle, z.B. STM32F7. Ist > dann halt mehr Programmieraufwand. v.A. f. den Radio Teil - oder ist der nur da um die Betreffzeile zu schmücken?
unter den einzelnen Menüreitern sollen natürlich die aufgeschrieben funktionen mit neuem Fenster geöffnet werden. Drahtloser Autologe schrieb: > Warum nicht einfach ein CAN Modul? Oder gleich einen SBC mit > CAN-Funktionalität nutzen? Es gibt auch Mikrocontroller mit genug > Leistung für Grafik-Displays und CAN-Schnittstelle, z.B. STM32F7. Ist > dann halt mehr Programmieraufwand. > > v.A. f. den Radio Teil - oder ist der nur da um die Betreffzeile zu > schmücken? Kann man hiermit auch eigene Grafiken zu Button Verwenden? und wie bekomm ich von dem Chip ein Soundsignal an das Audiodignal des KFZ? (mind. 50W) Welche Programmiersprachen kann man hierfür verwenden? (C++?) Drahtloser Autologe schrieb: > Warum nicht einfach ein CAN Modul? Oder gleich einen SBC mit > CAN-Funktionalität nutzen? Es gibt auch Mikrocontroller mit genug > Leistung für Grafik-Displays und CAN-Schnittstelle, z.B. STM32F7. Ist > dann halt mehr Programmieraufwand. > > v.A. f. den Radio Teil - oder ist der nur da um die Betreffzeile zu > schmücken? Naja, der Begriff "Autoradio" ist ja viel seitig.. Hoffe allerdings, das ich das Thema verständlich erklären konnte.. :)
So einfach ist das nicht... Was für Vorerfahrungen hast du so? Ich würde empfehlen erstmal das nötige zu lernen um die Software mittels Python auf dem PC zum laufen zu bringen weil diese Programmeirsproche auch auf dem Raspi läuft. Dafür gibt es Grafiklibrarieries mit denen man das in ein paar Wochen von grundauf als Hobby erlernen kann: https://wiki.python.org/moin/GuiProgramming Zumindest sofern du zum programmierer geignet bist. Jeder lernt das in anderem Tempo...
Die einfachste Möglichkeit sowas mit der Funktionalität zu kriegen dürfte Kodi (ehemals XBMC) mit einem Theme drauf sein. Dazu ein Plugin für deine Fahrzeug-Parameter und das Relais.
Alex G. schrieb: > So einfach ist das nicht... > Was für Vorerfahrungen hast du so? > > Ich würde empfehlen erstmal das nötige zu lernen um die Software mittels > Python auf dem PC zum laufen zu bringen weil diese Programmeirsproche > auch auf dem Raspi läuft. > Dafür gibt es Grafiklibrarieries mit denen man das in ein paar Wochen > von grundauf als Hobby erlernen kann: > https://wiki.python.org/moin/GuiProgramming > Zumindest sofern du zum programmierer geignet bist. Jeder lernt das in > anderem Tempo... geht das doch mit Python? cool, habe bei Python nie was passendes Gefunden bezüglich 'Grafiken' als Button zu benutzen. Ich habe bis jetzt nur gelernt, wie man mit CoDeSys im Strukturiertem Text programmiert. habe allerdings nebenbei in Python und C++ rein geschaut.. aber dann würde ich mir Python nochmal genauer anschauen und das projekt nach und nach aufbauen.. Gibt es bei Python auch .lib zum auslesen von USB Mediadatein? und Radiofunktionen? Max D. schrieb: > Die einfachste Möglichkeit sowas mit der Funktionalität zu kriegen > dürfte Kodi (ehemals XBMC) mit einem Theme drauf sein. > Dazu ein Plugin für deine Fahrzeug-Parameter und das Relais. Das war das Fertige Design? das gefällt mir nicht und bringt mir nicht das, was ich mir vorstelle :)
Du kannst natürlich alles selber programmieren, aber bis du z.B. einen Mediaplayer programmiert hast bist du ganz schön beschäftigt. Mit Kodi hast du ein gutes Gerüst (GUI+Player-Funktionen) auf das du zum einen dein Theme legen kannst und zum anderen in das du über Plugins verschiedene Funktionen einbinden kannst. Über die Themes kann man eigtl. die komplette UI selber definieren (z.B. hier: https://forum.kodi.tv/showthread.php?tid=225688 mit bmw logo). Ich will dir die Fähigkeit selber sowas zu schreiben nicht absprechen, aber es wird garantiert ein großer Brocken Arbeit und am Ende hast du etwas das von aussen auch nicht besser aussieht. Ich würde meine Energie lieber in das grafische Design und das Interface zum Auto stecken. Damit bist du nämlich eh erstmal beschäftigt.
Max D. schrieb: > Du kannst natürlich alles selber programmieren, aber bis du z.B. > einen Mediaplayer programmiert hast bist du ganz schön beschäftigt. > Mit Kodi hast du ein gutes Gerüst (GUI+Player-Funktionen) auf das du zum > einen dein Theme legen kannst und zum anderen in das du über Plugins > verschiedene Funktionen einbinden kannst. > > Über die Themes kann man eigtl. die komplette UI selber definieren (z.B. > hier: https://forum.kodi.tv/showthread.php?tid=225688 mit bmw logo). > > Ich will dir die Fähigkeit selber sowas zu schreiben nicht absprechen, > aber es wird garantiert ein großer Brocken Arbeit und am Ende hast du > etwas das von aussen auch nicht besser aussieht. > > Ich würde meine Energie lieber in das grafische Design und das Interface > zum Auto stecken. Damit bist du nämlich eh erstmal beschäftigt. Ich glaub ich verstehe es nicht richtig mit dem Kivy. Ich habe ja oben ein Bild von meinem Design (Alpha, wird noch ein wenig bearbeitet) Besteht mit Kivy die Möglichkeit, die Funktionen des players zu verwenden?
Drahtloser Autologe schrieb: > v.A. f. den Radio Teil - oder ist der nur da um die Betreffzeile zu > schmücken? Da gibts doch IC's für, oder? Der STM32 hat Audio-Interfaces (I2S u.a.). Michele96 schrieb: > Kann man hiermit auch eigene Grafiken zu Button Verwenden? Der Controller weiß nichts von "Buttons" oder "Grafiken". Du sendest dem Display Pixel für Pixel, was es anzeigen soll. Da kannst du Buttons, Bilder, Diagramme, was auch immer darstellen. Es empfiehlt sich die Verwendung einer Grafik-Bibliothek, um das zu vereinfachen, z.B. STemWin. Michele96 schrieb: > und wie bekomm ich von dem Chip ein Soundsignal an das Audiodignal des > KFZ? (mind. 50W) Audio-Interface (I2S), Audio-Codec und dann irgendein Verstärker? Das STM32F7-Discovery Board hat ein Display und einen Audio-Codec mit Klinken-Buchsen eingebaut, so als Start. Michele96 schrieb: > Welche Programmiersprachen kann man hierfür verwenden? (C++?) C, C++, Basic, Python, Lua, Assembler, Pascal, ... Michele96 schrieb: > geht das doch mit Python? cool, habe bei Python nie was passendes > Gefunden bezüglich 'Grafiken' als Button zu benutzen. Python ist eine universelle Programmiersprache, die kann prinzipiell alles darstellen. Je nach verwendetem Grafik-System auch beliebige Buttons. Ich finde es jedenfalls niedlich, dass du die "Grafik-Buttons" so als Hauptkriterium siehst. Das ist so wie zu sagen "ich möchte ein Auto bauen und suche dafür eine Chassis-Fertigungs-Technologie, mit der ich die Lenkradfarbe ändern kann". Michele96 schrieb: > Ich habe bis jetzt nur gelernt, wie man mit CoDeSys im Strukturiertem > Text programmiert. Das ist ja auch kein "programmieren"... Michele96 schrieb: > Gibt es bei Python auch .lib zum auslesen von USB Mediadatein? und > Radiofunktionen? Python verwendet keine .lib Dateien. Python selber kann wohl kaum USB direkt ansprechen, aber wenn ein Betriebssystem wie Linux darunter liegt ist es kein Problem Dateien von USB-Sticks zu öffnen. Die Radiofunktion ist doch ein Hardware-Problem, eine Programmiersprache kann wohl kaum Hochfrequenz-Signale empfangen. Michele96 schrieb: > Das war das Fertige Design? das gefällt mir nicht Das Design eines fertigen Systems anzupassen sollte die allereinfachste Möglichkeit sein... Du kaufst doch auch kein neues Auto, nur weil dir die Lenkradfarbe des alten nicht gefällt.
Michele96 schrieb: > Ich glaub ich verstehe es nicht richtig mit dem Kivy. > Ich habe ja oben ein Bild von meinem Design (Alpha, wird noch ein wenig > bearbeitet) > > Besteht mit Kivy die Möglichkeit, die Funktionen des players zu > verwenden? Kodi ist erstmal ein Media-Center. In dem default-theme ist das ausgelegt um auf einem TV oder dgl benutzt zu werden. (XBMC war die Abkürzung für Xbox Media Center) Der "media-player" teil ist schon fertig. Du gehst jetzt her und schreibst ein theme dafür mit dem du die Menüstruktur und Darstellung der Knöpfe anpasst.
Max D. schrieb: > Michele96 schrieb: > Ich glaub ich verstehe es nicht richtig mit dem Kivy. > Ich habe ja oben ein Bild von meinem Design (Alpha, wird noch ein wenig > bearbeitet) > Besteht mit Kivy die Möglichkeit, die Funktionen des players zu > verwenden? > > Kodi ist erstmal ein Media-Center. > In dem default-theme ist das ausgelegt um auf einem TV oder dgl benutzt > zu werden. (XBMC war die Abkürzung für Xbox Media Center) > Der "media-player" teil ist schon fertig. > > Du gehst jetzt her und schreibst ein theme dafür mit dem du die > Menüstruktur und Darstellung der Knöpfe anpasst. also könnte ich das Media-Center so verwenden, wenn ixh auf meinen button drücke, das ich dann zu diesem Mediamenü gelange? das wär aufjede fall nice :) möchte mich schonmal für die, bis jetzt reichlichen und hilfreichen Antworten bedanken :) Ich würde dieses Projekt anschließend mit euch Teilen (inkl. Beschreibung)
Ich weiß nicht zu 100% wie jedes Detail von Kodi gelöst ist, aber ich würde mir an deiner Stelle einfach mal Kodi auf den Desktop laden und da z.B. das bmw theme installieren. Dann kannst kannst du dir anhand der Struktur der Dateien einen Überblick verschaffen wie das ganze gelöst ist und wo du eingreifen müsstest um deine Lösung umzusetzen. Für Sachen wie Ladedruck würde ich als Ausgangspunkt vlt. ein Wetterdaten Plugin nehmen. Da werden externe Daten geladen und visualisiert. Da könntest du ansetzen um deine Daten aus deinem Kfz zu holen und ebenfalls anzuzeigen.
Max D. schrieb: > Ich weiß nicht zu 100% wie jedes Detail von Kodi gelöst ist, aber > ich würde mir an deiner Stelle einfach mal Kodi auf den Desktop laden > und da z.B. das bmw theme installieren. Dann kannst kannst du dir anhand > der Struktur der Dateien einen Überblick verschaffen wie das ganze > gelöst ist und wo du eingreifen müsstest um deine Lösung umzusetzen. > Für Sachen wie Ladedruck würde ich als Ausgangspunkt vlt. ein > Wetterdaten Plugin nehmen. Da werden externe Daten geladen und > visualisiert. Da könntest du ansetzen um deine Daten aus deinem Kfz zu > holen und ebenfalls anzuzeigen. Danke sehr :) Ich probier das mal aus.. Mit den Auslesedaten werde ich ein OBD2 auslesemodul für den Pi verwenden (Ladedruck muss evtl. extra abgegriffen werden)
Max D. schrieb: > Ich weiß nicht zu 100% wie jedes Detail von Kodi gelöst ist, aber > ich > würde mir an deiner Stelle einfach mal Kodi auf den Desktop laden und da > z.B. das bmw theme installieren. Dann kannst kannst du dir anhand der > Struktur der Dateien einen Überblick verschaffen wie das ganze gelöst > ist und wo du eingreifen müsstest um deine Lösung umzusetzen. > Für Sachen wie Ladedruck würde ich als Ausgangspunkt vlt. ein > Wetterdaten Plugin nehmen. Da werden externe Daten geladen und > visualisiert. Da könntest du ansetzen um deine Daten aus deinem Kfz zu > holen und ebenfalls anzuzeigen. Ich habe jetzt mal grob geschaut, wie das mit dem "KODI" aussieht.. Leider habe ich da keinen Ansatz gefunden, wie man da eingreifen kann.. Von der Seite "Python" gibt es evtl. das ein oder andere Tool mit dem etwas brauchbares raus kommen könnte, jedoch würde ich dies bezüglich gern mit erfahrerenen Leuten auseinander setzen. Bin Leider einfach zu neu im Gebiet der Programmierung von, für mich, so komplexen Systemprogrammierungen. Wenn jemand die ein oder andere Idee hat, wie man einzelne Komplexe in ein schon recht komplexes Projekt mit einzubinden, wär das natürlich mega :) Ich zähle mal ein paar Thematiken auf: - die Schrift der Button sollen sich beim Betätigen ändern (auf dem Bild sind die Button transparent und ich habe das mit einer Ebene geregelt, die sic unter dem Button Befindet) - Navigationssystem (mir würde google-maps reichen o.ä.) - Bluetooth und W-Lan Verbindung (Bluetooth zur Datenübertragung und zum abspielen von Musik und Videos (wenn möglich mit anzeige von den Titeln), W-Lan ganz klar für das Internet) - Der "kleine" Mediaplayer, soll synchron zu dem laufen, der sich im Mediacenter befindet. - Es soll auch im Bereich des Sounds eine Einstellung des Klang geben (Bass, Höhen, Tiefen, ..) - auslesen von Livedaten aus dem Canbus (OBD2 Funktion, nur Livedaten, keine Veränderung wie Codieren! oder Fehlerspeicher auslesen, das soll noch unabhängig des Radios geschehen) - nach und nach kommt sicher die ein oder andere Funktion dazu, jedoch sollen die Punkte erstmal genügen, ist ja bis hier hin erstmal eine Menge Aufwand Ihr könnt euch gern auch privat melden Email: MickelMichele@web.de Wenn das Projekt funktioniert, würde ich es gern mit Beschreibung vorstellen :)
hab mich mal registriert.. Das ein oder andere "Problem" in meinen Augen sehe ich wahrscheinlich auch zu kritisch oder falsch, man merkt villt. das ich ziemlicher Neuling auf dem Gebiet bin und Bitte daher auf Verständnis :)
An welche Informationen kommst du denn jetzt schon dran? Ein Vollbild-Fenster mit ein paar Buttons drin ist nicht besonders schwer, das kann man sich mit SDL oder einer anderen Bibliothek (Python kommt z.B. mit Tkinter) schnell zusammenzimmern. Aber deine Hauptaufgabe liegt darin, die Daten korrekt auszulesen bzw. zu empfangen, passend aufzubereiten (d.h. in die darzustellenden Einheiten umzuwandeln) und eventuell bestimmte Aktionen auszulösen. Und dann hast du da noch lange kein Radio mit Bluetooth-Eingang drin. Schon gar keins, was auch dann noch weiterspielt, wenn du einen Button gedrückt hast und jetzt das Bild der Rückfahrkamera einblendest. Das ist nämlich alles nicht so ganz einfach. Außerdem verwechselst du "Raspberry Pi" und "komplexe Systemprogrammierung". Einen Raspberry Pi programmierst du wie einen ganz normalen Linux-PC. Also besorge dir erstmal einen Linux-PC (VMware Player oder Virtual PC reicht) und schreibe dir erstmal alles, was ohne Auto funktioniert, da drauf. Wenn das funktioniert, teste es auf dem Pi. Ein erfahrener Entwickler wird für dein Vorhaben vielleicht 3-6 Monate brauchen. Vollzeit. Wenn er weiß, was er zu tun hat. Für dich selbst, rechne mal mit 3-6 Jahren. Danach hast du zwar das Auto nicht mehr, dein Radio passt in kein dann aktuelles Auto mehr rein, aber du hast viel gelernt. Viel Erfolg.
S. R. schrieb: > An welche Informationen kommst du denn jetzt schon dran? >... das mit dem Pi war ja nur ein erster Ansatz, ich würde halt sehr gern mehr davon lernen, jedoch ohne hilfe und ohne guten ansatz kommt man nicht weit. möchte nicht unfreundlich wirken, aber "viel erfolg" und kontra meiner ideen, ohne verbesserungsvorschläge zu liefern, helfen leider kein stück weiter :(
Michele96 schrieb: > Könntet ihr mir weiter helfen, wie ich mein/dieses Projekt programmieren > kann? Das geht mit Python und QT :)
SM schrieb: > Michele96 schrieb: > Könntet ihr mir weiter helfen, wie ich mein/dieses Projekt programmieren > kann? > > Das geht mit Python und QT :) Dann nehme ich Python.. Wie kann man denn Kodi mit Python zerflücken und auf den quelltext zugreifen?
Wieso willst du Kodi zerpflücken? Dessen Code findest du hier: https://github.com/xbmc/xbmc Ist aber ganz gewiss nichts für Programmieranfänger. Was du tun könntest, ist ein Plugin für Kodi mittles Pyhton zu bauen: http://kodi.wiki/view/Python_development
:
Bearbeitet durch User
Eigentlich wollte ich gerade anmerken, dass die Implementierung eines eigenen Navigationssystems schon eine gewaltige Aufgabe ist. Dann habe ich aber bemerkt, dass es für Kodi offenbar sogar schon ein Google Maps-Addon gibt. Allerdings ist es keine Kleinigkeit, daraus ein richtiges Navi zu machen, insbesondere wegen der erforderlichen Kartendrehung und fortwährenden Aktualisierung des Aufenthaltsortes., ohne dass es zu sehr ruckelt. http://kodi.wiki/view/Add-on:Maps_Browser Die o.a. Schätzung von 3-6 Mannmonaten für einen hinreichend erfahrenen Entwickler halte ich für das Gesamtpaket des "Autoradios" reichlich knapp bemessen. In der Zeit schafft man es vielleicht, die allerersten Grundfunktionen zu implementieren bzw. aus bestehenden Projekten anzupassen.
Dr. Sommer schrieb: > Michele96 schrieb: >> Ich habe bis jetzt nur gelernt, wie man mit CoDeSys im Strukturiertem >> Text programmiert. > Das ist ja auch kein "programmieren"... Strukturierter Text (ST bzw. Siemens SCL) ist doch ein normaler Pascal-Dialekt. Damit kann schon durchaus schon sehr ordentliche Ablaufsteuerungen usw. programmieren, und das durchaus auch mit gehobenen Ansprüchen an die Softwarestruktur. Allerdings sollte man nicht den Umkehrschluss ziehen, d.h. aus der erfolgreichen Implementierung einer trivialen Ablaufsteuerung schließen, dass man nun den großen Durchblick in Sachen Softwareentwicklung habe.
Michele96 schrieb: > SM schrieb: >> Michele96 schrieb: >> Könntet ihr mir weiter helfen, wie ich mein/dieses Projekt programmieren >> kann? >> >> Das geht mit Python und QT :) > > Dann nehme ich Python.. > > Wie kann man denn Kodi mit Python zerflücken und auf den quelltext > zugreifen? Mit open("Dateiname") sowie mit dem Python ast Parser.
hab gehofft, das es eine Copy&Past sache, mit kleinigkeiten anzupassen, wird :D scheinbar ist der aufwand zu hoch.. aber falls sich jmd ein paar münzen verdienen möchte, kann er gern eine pn schreiben ^^
Michele96 schrieb: > hab gehofft, das es eine Copy&Past sache, mit kleinigkeiten > anzupassen, wird :D > > scheinbar ist der aufwand zu hoch.. aber falls sich jmd ein paar münzen > verdienen möchte, kann er gern eine pn schreiben ^^ dann bitte an michele_h die pn.
Copy&Paste und Programmieren schließt sich in den meisten Fällen aus. Zu den Münzen: Selbst bei einem symbolischen Stundenlohn von 2,50€ wirst du es kaum bezahlen wollen. Zumindest nicht, wenn es sauber, nachvollziehbar und performant umgesetzt sein soll. Falls Du es dennoch selbst angehen willst: - Teile das Projekt in sinnvolle Module - Gliedere die Module nach Wichtigkeit und Abhängigkeiten (Tipp: GUI/Design ist eher unwichtig) - Leg los Ohne große Programmierpraxis kann es sein, dass Du schnell verzweifelst, oder die ersten Module öfters implementieren wirst. Das soll keine Abschreckung sein, aber für ein erstes Projekt ist das schon sehr anspruchsvoll...
Michele96 schrieb: > möchte nicht unfreundlich wirken, aber "viel erfolg" und kontra meiner > ideen, ohne verbesserungsvorschläge zu liefern, helfen leider kein stück > weiter :( Das war nicht abwertend gemeint, sondern als Ansporn. Stichworte wurden genug genannt. Für deine Wunschoberfläche brauchst du eine Programmiersprache und eine Grafikbibliothek. Als Programmiersprache hast du dich für Python entschieden, das ist keine schlechte Wahl für einen normalen PC oder einen Raspberry Pi mit Linux (für einen Arduino wäre es eine sehr schlechte Wahl). Dann ist dein nächster Schritt, diese Sprache zu lernen. Als Grafikbibliotheken wurden mindestens SDL, Qt und Tkinter genannt, es gibt aber noch weitere. Alle diese kann man mit Python benutzen, und keine von denen wäre eine schlechte Entscheidung für deinen Anwendungsfall. Also musst du als nächstes diese Bibliotheken lernen. Das ist der einfache Teil der ganzen Sache. Wenn du den nicht selbst machen kannst, wirst du die schwierigen Sachen (Bluetooth, Ladedruck auslesen usw.) auch nicht schaffen. Du unterschätzt den Aufwand. Und was die Münzen angeht... rechne mal kurz nach: 1€ pro Stunde, 8 Stunden pro Arbeitstag, 20 Arbeitstage pro Monat, 6 Monate insgesamt bist du schon bei fast 1000€. Für einen kompetenten Entwickler legst du da noch nen Faktor 50 bis 100 drauf, und selbst dann hast du keine Garantie, dass es in der Zeit fertig ist. Ein paar Bitmaps malen kann ich dir übers Wochenende machen, aber damit kannst du nichts anfangen und mir nützt es auch nichts. Vor allem würde es in die "Radio-Software" nicht reinpassen, denn ich weiß ja nicht, wie der Rest des Systems funktioniert. Das müsstest du schon vorher entwerfen (wie erfährt die Oberfläche, welches Lied gerade an welcher Position spielt, ...) Du bist dran, es ist dein Projekt.
S. R. schrieb: > Als Programmiersprache hast du dich für Python entschieden, das ist > keine schlechte Wahl für einen normalen PC oder einen Raspberry Pi mit > Linux Python ist unzweifelhaft eine gute Sprache, aber für sehr komplexe Projekte bevorzugen viele eine statisch typisierte Sprache wie Java, C# oder C++, weil man hier Fehler in verschachtelten Konstrukten schneller findet. Irgendwann wird es auch weniger Arbeit, die Typannotationen dranzuschreiben, als jede Funktion mit Laufzeit-Typ-Prüfungen vollzustopfen und mit Unit-Tests extra dafür zu versehen. Das angestrebte Projekt ist von der Komplexität her definitiv in diesem Bereich...
Ich schrieb nicht, dass Python die erste Wahl dafür ist. Es ist aber zumindest kein Fehler (wo ich z.B. diverse Basic- und Pascal-Dialekte einsortieren würde). Am Ende ist das Projekt sowieso ein Sammelsurium kleinerer Projekte, deren Interfaces sauber definiert sein müssen. Anders kann man das allein ohnehin nicht stemmen.
Dr. Sommer schrieb: > [Python] > Irgendwann wird es auch weniger Arbeit, die Typannotationen > dranzuschreiben, als jede Funktion mit Laufzeit-Typ-Prüfungen > vollzustopfen und mit Unit-Tests extra dafür zu versehen. Welche Laufzeit-Typ-Prüfungen? Mit falschen Typen fliegt Dir das Ding zur Laufzeit um die Ohren und gut ist. Die Philosophie ist eine andere ("We are all adul(nospam)ts here"). Du sollst nicht Python zu C++ umbauen. Natürlich solltest Du lieber gleich C++ nehmen.
SM schrieb: > Welche Laufzeit-Typ-Prüfungen? Mit falschen Typen fliegt Dir das Ding > zur Laufzeit um die Ohren und gut ist. Ja, aber zu spät. Wenn ein Objekt durch verschiedene Funktions-Level und Klassen übergeben wird, merkt man ggf. erst ziemlich spät dass es der falsche Typ ist. Und dann gibt's fröhliches Suchen, wo jetzt genau das falsche Objekt übergeben wurde - deswegen machen manche Leute an den Anfang einer jeden Funktion eine Prüfung auf korrekte Typen, damit der Fehler halt sofort auftritt und leichter zu finden ist. Da kann man aber auch direkt eine statisch typisierte Sprache nehmen.
1. Welche Größe und Auflösung soll das Touchpad haben? 2. Welche NaviApp möchtest Du nutzen? Ich finde den Raspberry Pi nicht schlecht, aber das Betriebssystem im Auto von einer SD Karte zu laden halte ich für keine gute Idee. Ich würde Dir eher zum UP oder UP² raten, weil das System hat einiges mehr an Power, eMMC, SATA M.2 und Du bist relative frei bzgl. Betriebssystem Windows oder Linux. http://www.up-board.org/upsquared/ Das Board unterstützt viele verschiedene Betriebssystem und du sparst Dir dank x86 das Cross compilieren. Bzgl. HMI und Programmiersprache solltest Du eine nehmen welche Du schon kennst. Dein HMI Beispiel lässt sich sehr schnell in C# WPF o. UWP, QT C++ oder Java realisieren.
Die ganzen Chinaböller verwenden soweit ich weiss, Windows CE. Dafür müsste man eigentlich genug bekommen.
Dr. Sommer schrieb: > [...] ja, Zustimmung. Torben schrieb: > http://www.up-board.org/upsquared/ Verwendest Du das? Wie schnell ist die Anbindung zum FPGA? Werden IPs (FPGA) und Treiber (CPU) zur Verfügung gestellt? Wo kann man (ernsthafte) Dokus und SW herunter laden?
>Verwendest Du das? Nein, da ich keine I/O Interfaces benötigte für mein Projekt hab ich mich zu einem Intel NUC MiniPC entschieden, aber das Feedback der Community ist recht positiv. Forum: https://www.up-community.org/ Downloads: https://downloads.up-community.org/
Torben schrieb: > Ich finde den Raspberry Pi nicht schlecht, aber das Betriebssystem im > Auto von einer SD Karte zu laden halte ich für keine gute Idee. Stimme ich ebenfalls zu. Für die Erstimplementierung reicht das aber vollkommen aus, und später kann man das Board ohnehin wechseln. Meine Wahrnehmung spricht von einer stinknormalen Linux-Entwicklung und ein bisschen Embedded, das ist relativ portabel. Torben schrieb: > Das Board unterstützt viele verschiedene Betriebssystem und du sparst > Dir dank x86 das Cross compilieren. Auf ein Betriebssystem muss man sich zwingend festlegen, aber ob man da nun Windows, Linux oder was drittes nimmt, ist nebensächlich. Tools gibt's für alles. Cross-Compiling spielt keine Rolle. Python-Code wird nicht über Kreuz gebaut und der TO kann auf dem Raspberry selbst komfortabel genug entwickeln. Wir reden hier nicht von Profi-Niveau. Torben schrieb: > Bzgl. HMI und Programmiersprache solltest Du eine nehmen > welche Du schon kennst. Ich sehe beim TO keine nennenswerten Vorkenntnisse. Eine Sprache wird er so oder so lernen müssen, und Python ist zumindest kein Fehler. Thomas G. schrieb: > Die ganzen Chinaböller verwenden soweit ich weiss, Windows CE. Dafür > müsste man eigentlich genug bekommen. Windows CE ist doch schon länger tot, nur noch nicht ganz verrottet. Mag sein, dass man da bekannte Navi-Software draufkriegt, aber das ist weder zukunftssicher, noch kriegt man das in seine eigene Software integriert.
Die mir bekannten "Chinaböller" sind alle grob gesagt ein Android Tablet (oft noch mit altem Android) dessen Audio-Ausgang in einen Class-D Amp geht.
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.