Hallo,
WinCE ist wirklich nicht mein Bereich.
Wir wollen aber eine alte Maschine neu auflegen und da bietet sich als
BS WinCE an. Da wir langjährige Erfahrung mit Fujitsu gehabt hatten,
entscheidete wir uns dessen Board D3313 einzusetzen. Dafür gibt es laut
Fujitsu auch BSP mit WinCE. Also besorgte ich den Board, installierte
auch PlatformBuilder.
Meine Frage lautet wie bekomme ich Image auf den D3313 drauf und wie
kann ich das Gerät in Visual Studio Attachen und später mal Debuggen.
Danke im Voraus
Gruss
WinCE ist auf dem Rückzug. Es wird nur noch von wenigen
Prozessorherstellern im ARM-Bereich unterstützt: im Wesentlichen TI
(Sitara) und NXP (iMX6). Punkt. Und da auch nur ARM v7A Architektur,
kein ARM v7M, kein ARM11 mehr, kein ARM9 mehr, kein MIPS mehr.
Alternativ x86 PC Hardware. Microsoft benutzt den CE-Kernel selber nicht
mehr für ihre eigenen Produkte, sondern nur noch den NT-Kernel, der auch
im Desktop-Windows verwendet wird. Auch Windows Mobile und die XBox
nutzen den NT-Kernel, weil der einfach leistungsfähiger ist und die
aktuellen Prozessorgenerationen damit klarkommen. Das letzte
Microsoft-Produkt, das noch den CE-Kernel verwendet hat, war Windows
Phone 7.8. Danach war Schicht im Schacht. Und wenn Microsoft seine
eigenen Produkte intern aufs Abstellgleis schiebt, sollte auch dem
dümmsten Kunden klar sein, was das heißt.
Ich sehe daher nicht, dass sich Win CE da "anbietet". Wer das seit 20
Jahren macht, nun gut. Heutzutage neu anfangen ... ähm ... nee! Sorry.
Ihr wisst das alles wahrscheinlich nicht, aber ich rate Euch, Eure
Entscheidung nochmal zu überdenken.
Ihr habt Euch für Standard-PC Hardware entschieden. Da könnt Ihr genauso
gut Windows Standard Embedded nehmen (also quasi ein normales Windows 7
im Inneren mit modularem Installer) und habt weniger Probleme mit
Treibern in der Zukunft und seid mit der Entwicklung einfach deutlich
schneller fertig.
Oder Linux oder x86 Android. Das gibts ja auch.
Zu Deiner konkreten Frage: kauf Dir ein Einführungsbuch. Du wirst es
brauchen. Ist mir jedenfalls so gegangen. Einfach um die Zusammenhänge
zu verstehen.
zB das hier. Ist zwar eines für die vorherige Version, aber so viel hat
sich nicht geändert:
https://www.amazon.de/Professional-Windows-Embedded-Compact-7/dp/1118050460
Und CE heißt jetzt Windows Embedded Compact.
fchk
Hallo Frank,
Das Problem sieht folgendermaßen aus -wir brauchen ein Hard real time
system auf dem Ethercat Master mit einem Zyklus von 125 usec läuft bei
max jutter von 20% von diesen 125usec. Leider hat Microsoft nicht
geschafft win 10 core echtzeitfähig zu machen. Wir haben bei uns
Vxworks7 getestet aber der ganze process ist da sehr kompliziert.
Ausserdem hatten wir vor Qt für die Visualisierung einzusetzen. Bei
Vxworks macht es noch Haufen Arbeit Qt zu kompilieren. Mir liegt auch
Visual Studio als IDE da ich mehrere Jahre auf der Arbeite. Auch solche
Firmen wie Beckhoff setzen fast ausschließlich CE ein. Arm ist gut aber
wegen oben genannten Anforderungen können wir den nicht einsetzen.
Gruss
Russe schrieb:> wir brauchen ein Hard real time> system auf dem Ethercat Master mit einem Zyklus von 125 usec läuft bei> max jutter von 20% von diesen 125usec. Leider hat Microsoft nicht> geschafft win 10 core echtzeitfähig zu machen.
Ähm, nichts von MS war jemals Echtzeitfähig!?
Der normale Linux-Kernel ist aber gut in die Richtung. Da gibts diverse
Distributionen die das anbieten.
Russe schrieb:> Mir liegt auch Visual Studio als IDE
Dank VisualGDB schränkt Dich das nicht mehr nur auf
Windows-Betriebssysteme ein. Damit kannst Du auch Programme für Linux
(oder FreeBSD) auf der zugehörigen Hardware entwickeln und debuggen.
Such Dir irgendein Linux/Unix, für das es eine passende
Realtime-Erweiterung gibt, und nutze das.
Danke für die Infos. Ich habe für mich wirklich viel Neues entdeckt.
Aber hier geht es nicht um ARM Prozessor sondern um i5 (ARM ist nicht
genug leistungsfähig für die simultane Ansteuerung von 3 Achsen). Die
Maschine soll auf die Baustelle mitgenommen werden und dort gehen die
Leute mit ihr nicht besonders zimperlich um. Und um 17 Uhr wird der
Stecker einfach weggezogen. Für Windows ist es natürlich tödlich.
Win CE hat diese Probleme nicht. Aber dank meinen Vorredner sehe ich
dass CE auch in Zukunft nicht unterstützt wird. Also müssen wir entweder
UVS anschließen, was an sich sehr viele Problemmen nach 5-6 Jahren für
uns bereitet. Oder Eine RTOS Linux Distribution ansehen.
Video https://www.dropbox.com/s/w67yzy2odpi8mwn/20170124_084447.mp4?dl=0
Danke an Alle
Gruss
Es gibt einen Bootloader loadcepc.exe mit dem man das Image per DOS
starten kann, das ist erstmal eine einfache Methode:
https://msdn.microsoft.com/en-us/library/ms930104.aspx
Das WinCE kann auch unter einem Hypervisor wie Acontis laufen, damit
lässt sich Realtime + Windows Desktop auf einem PC realisieren.
Aber wie einige Vorredner schon sagten, der Support für WinCE ist mau
und z.B. gerade bei Netzwerkkarten schwierig. Kleinste Änderungen in der
Hardware kosten Wochen das in der Software auszubügeln. Das Fujitso
Board ist eines der wenigen in deutscher Produktion, wenn die nicht mehr
liefern hast du ein Problem. Alternative sind da evtl. die Beckhoff CX
Hutschienen PCs, die bekommst du auch fertig mit CE Image.
Russe schrieb:> ARM ist nicht> genug leistungsfähig für die simultane Ansteuerung von 3 Achsen)> [...]> Video https://www.dropbox.com/s/w67yzy2odpi8mwn/20170124_084447.mp4?dl=0
Ich lach mich schlapp. Ein ARM kann keine 3 Achsen steuern? Für das was
in dem Video zu sehen ist reicht schon was aus Arduino-Klasse und mit
Sicherheit so ziemlich jeder beliebige ARM Cortex.
Russe schrieb:> Aber hier geht es nicht um ARM Prozessor sondern um i5 (ARM ist nicht> genug leistungsfähig für die simultane Ansteuerung von 3 Achsen). Die> Maschine soll auf die Baustelle mitgenommen werden und dort gehen die> Leute mit ihr nicht besonders zimperlich um. Und um 17 Uhr wird der> Stecker einfach weggezogen. Für Windows ist es natürlich tödlich.> Win CE hat diese Probleme nicht.
Doch, auch bei CE kannst Du dieses Problem haben. Du kannst Dir nämlich
so ganz einfach Deine Registry oder Dein Filesystem zerschießen.
Registry: Da gibts zwei Möglichkeiten
(a) Registry im RAM. Die wird beim Booten aus dem (readonly) binfs ins
RAM geladen, und dann arbeitet das System damit. Man kann dann aber
keinerlei Einstellungen in der Registry speichern, weil beim Ausschalten
ist der RAM-Inhalt einfach weg, und beim nächsten Boot wird wieder ein
frisches, unverändertes Original aus dem binfs geladen
(b) Hive-based. Hier ist die Registry im Flash. Damit kann man
persistente Daten hineinschreiben. Wenn man das System aber nicht
richtig herunterfährt, ist die Registry möglicherweise hinüber, und die
Maschine bootet nicht mehr (worst case), oder sie versucht die Registry
zu reparieren, schafft das nicht und schreibt eine frische
Default-Registry hinein, wobei die ganzen Einstellungen dann natürlich
weg sind (best case).
> Aber dank meinen Vorredner sehe ich> dass CE auch in Zukunft nicht unterstützt wird. Also müssen wir entweder> UVS anschließen, was an sich sehr viele Problemmen nach 5-6 Jahren für> uns bereitet.
Windows Standard Embedded bringt spezielle Treiber mit, die einen
Betrieb mit Read-Only Filesystem ermöglichen, ähnlich wie bei CE.
> Oder Eine RTOS Linux Distribution ansehen.
Entweder das, oder ein richtiges RTOS nehmen. Vxworks hast Du ja schon
gesehen, QNX wäre vielleicht auch was für Euch.
fchk
>> Video https://www.dropbox.com/s/w67yzy2odpi8mwn/20170124_084447.mp4?dl=0>> Danke an Alle> Gruss
Frank K. schrieb:> Windows Standard Embedded bringt spezielle Treiber mit, die einen> Betrieb mit Read-Only Filesystem ermöglichen, ähnlich wie bei CE.
EWF heißt das Teil ;) Enhanced Write Filter
WinCE ist auch im Zusammenhang mit dem Visual Studio ein Krampf da:
- Verwendung von Compact Framework mit wesentlich weniger
Funktionsumfang als z.B. .net framework 2
- Compact Framework nur bis visual Studio 2008 möglich
Vielen Dank für den Hinweis über Windows Embedded Standard!
Forums ist eine Tolle Sache alles kann man doch nicht wissen. Vielen
Dank an Alle die sich an den Antworten beteiligt hatten! Ich werde mich
da tiefer erkundigen. Demnächst findet die Messe in Nürnberg statt und
Microsoft ist dort immer vertreten und erhoffe mir bißchen mehr
Klarheit davor.
Gruss
Bernd K. schrieb:> Russe schrieb:> ARM ist nicht> genug leistungsfähig für die simultane Ansteuerung von 3 Achsen)> [...]> Video https://www.dropbox.com/s/w67yzy2odpi8mwn/20170124...>> Ich lach mich schlapp. Ein ARM kann keine 3 Achsen steuern? Für das was> in dem Video zu sehen ist reicht schon was aus Arduino-Klasse und mit> Sicherheit so ziemlich jeder beliebige ARM Cortex.
Die Regelung an sich braucht in diesem Fall nicht wirklich viel. Aber
Ethercatmasterprocess belastet i5 allein mit 17 %.