Forum: PC-Programmierung Grundsätzliche Projektumsetzung / Wahl der Programmiersprachen


von Dwayne (Gast)


Angehängte Dateien:

Lesenswert?

Hallöchen zusammen,

ich weiß jetzt nicht ob dies das richtige Unterforum ist, aber ich denke 
schon. Folgendes:

Wir wollen als Schulprojekt eine Mikrocontroller Steuerung umsetzen. 
Konkret handelt es sich um eine Automatisierung von Elektr. 
Höhenverstellbaren Schreibtischen.

Im Endeffekt soll das am Ende so ablaufen:
An jedem Schreibtisch befindet sich ein RFID Reader und nen Touchscreen 
zur Bedienung. Man kommt nun an einen Schreibtisch, hält seine Karte 
davor und der Schreibtisch fährt in die zuvor gespeicherte Position. Am 
Touchscreen sollen dann verschiedene Positionen abgerufen werden können 
sowie Informationen zur aktuellen Höhe usw. Dies soll an allen 
Schreibtischen möglich sein.

Mir geht’s jetzt nicht um die Programmierung an sich, sondern eher um 
die grundsätzliche Umsetzung/Aufbau. Wir sind bei der 
Projektentscheidung, mangels Erfahrung, relativ blauäugig rangegangen 
und erst im intensiveren Recherchieren kamen dann die Erkenntnisse „Oh… 
so einfach geht’s dann doch nicht“. Nach der Recherche haben wir dann 
nen genaueren Eindruck bekommen was auf uns zu kommt.

Bevor wir jetzt für teuer Geld Literatur kaufen und feststellen, dass es 
die falsche Sprache ist bzw. es damit gar nicht funktioniert ... da 
dachten wir uns lieber kurz Nachfragen in einem Forum.

Die gedachte Umsetzung haben wir grob im Anhang zusammengefasst (Nicht 
so schön, aber zum Verständnis ausreichend). Da diese Informationen aus 
den unterschiedlichsten Foren/Projekten/Internetseiten gekommen sind und 
die eigene Erfahrung fast komplett fehlt…

1.  Wäre dies so grundsätzlich Umsetzbar?
2.  Würdet Ihr ggfls. eine andere Sprache wählen? Wenn ja, welche und 
wieso? (C wird präferiert)

3.  Hättet Ihr noch nen Tipp was man anders machen sollte oder ist da 
sogar nen grober Denkfehler drin?

Ich hoffe es ist Verständlich, was wir Wissen möchten.

Danke im voraus fürs Lesen.

Gruß
Dwayne

von A. S. (Gast)


Lesenswert?

Alles gut. Ich weiss nur nicht, ob ihr für ein kleines Projekt nicht zu 
viele intelligente Devices habt. Der Schreibtisch ist nur 
aktorik/Sensorik (Motoren, Endschalten) oder hat der auch eine 
Datenschnittstelle? Warum den Raspi? Um 1000 Einstellungen zu speichern? 
Das macht jeder kleine µC, zur Not mit einem SO-8 Flash.

Touch ist toll, wenn ihr eine gutes kennt. Ansonsten reicht m.E. ein 
einfaches Display mit 2-3 Buttons.

Vielleicht bin ich auch ein wenig Old-School, aber wenn es eh Neuland 
ist, wäre vielleicht Handy-App und NFC einfacher. Dann braucht es kein 
Display und wenig Elektronik.

Ach so, sprache ist egal. Das was da ist. C geht immer, aber wenn Euer 
Display XY spricht, dann dort XY.

von Frank K. (fchk)


Lesenswert?

Ich würde das ganze an mehreren Stellen entscheidend vereinfachen:

1. Chipkarte
Für den Anfang würde ich erstmal auf RFID verzichten und I2C-Chipkarten 
verwenden. Die haben ein ganz normales I2C EEPROM drin.

z.B. (eben mal schnell gegoogelt): 
https://www.horter-shop.de/de/i2c-chipkarten-zubehor/120-i2c-chipkarte-256-byte-2k-bit-4260404261001.html

Einfachst anzusteuern. Auf RFID könnt Ihr in einem späteren Schritt 
immer noch gehen.

2. Wofür die Datenbank? Für die Position? Ihr habt doch den Speicher auf 
der Chipkarte. Ich würde in einem ersten Schritt die Datenbankanbindung 
und Vernetzung und das alles weglassen. Der User hat seine persönliche 
Karte mit seinen Einstellungen. Reicht doch.

3. Touchscreen: Klar kann man machen. Tasten reichen erstmal auch.

Mit diesen Änderungen hast Du Dein Projekt erstmal auf 30% des 
ursprünglichen Aufwandes eingedampft, ohne dass der Nutzer davon groß 
etwas merkt.

Ihr habt:
- Benutzerinterface
  - Karte
  - Display
  - Taster
- Steuerung des Tisches
  - Motor
  - Positionsabfrage
  - Endlagenschalter
  - Erkennung von Überlast/Kurzschluss

Das ist machbar.

Als Sprache würde ich C nehmen, das gibts für jeden Controller, wird gut 
unterstützt, und funktioniert.

Zum Display:
Vorschlag:
https://www.buydisplay.com/3-inch-graphic-touch-display-lcd-backlight-module-240x120-white-on-blue
Touch-Controller:
https://www.ti.com/product/TSC2003
https://www.ti.com/product/TSC2007

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Frank K. schrieb:
> Für den Anfang würde ich erstmal auf RFID verzichten und I2C-Chipkarten
> verwenden.

Alternativ: Dallas iButton

Im Prinzip braucht man doch nur die Seriennummer als Key in eine 
"Datenbank". Die kann man in einem Mikrocontroller selbst im EEPROM 
ablegen.

Der Nutzer kommt hin, legt seinen iButton auf, und der Schreibtisch 
fährt auf die gespeicherte Höhe. Wenn der Nutzer jetzt mit den Tasten 
was ändert, wird das für später "gemerkt". (Um den EEPROM länger leben 
zu lassen, schreibt man die Daten erst nach ein paar Sekunden zurück, 
wenn man sich einigermaßen sicher ist, dass der Nutzer jetzt nichts mehr 
ändern wird.)

Wenn ein neuer iButton dazu kommt, kann das Display anzeigen, dass es 
dafür noch keine Daten gibt, dann muss der Nutzer ja ohnehin sich 
erstmal eine passende Position einstellen.

Hardwaremäßig sollte dafür jeder popelige Arduino ausreichen. Der 
ATmega328P hat 1 KiB EEPROM. Die iButton-Seriennummer ist 8 Byte lang, 
mehr als zwei weitere Byte für die Tischhöhe wird man wohl nicht 
speichern müssen pro Nutzer, macht 10 Byte. Da passen also rund 100 
verschiedene Nutzereinstellungen rein.

: Bearbeitet durch Moderator
von Freddy (Gast)


Lesenswert?

Hi,
Wenn ihr aus nach dem Projekt das ganze als Produkt weiterentwickeln 
wollt, dann bitte rechtzeitig das aktuelle Normenwerk studieren.
Ich kenne aktuell nur höhenverstellbare Tische wo während des Vorgangs 
ein Knopf aktiv gedrückt werden muss.  Ich würde wetten, dass dies ein 
Trick ist um nicht unter die Maschinenrichtlinie zu fallen.  Denn dann 
hast du eine schöne Gefährdungsanalyse und baust nachher eine 
Lichtschranke und Notaus auf deinen Schreibtisch

von P.Loetmichel (Gast)


Lesenswert?

> Wahl der Programmiersprache

Natürlich BASCOM.
Profis benutzen BASCOM!

von Michael B. (laberkopp)


Lesenswert?

Dwayne schrieb:
> Würdet Ihr ggfls. eine andere Sprache wählen

Touchscreen ? RFID ?

Nimm einfach pro Tisch ein NFC fähiges Smartphone und programmiere eine 
App, kann auch in HTMP5 sein oder Basic.

Bleibt nur, wie das Smartphone mit dem Motor im Tisch kommuniziert, und 
die Endlage erkennt. Das könnte man über serielle Verbindung via 
Bluetooth machen, aber einfacher: Per Ohrhörerbuchse und Mikro, man 
erzeugt einfach Töne und der Tisch sendet Töne zurück. Dazu braucht der 
Tisch bloss NE555 und NE567 Tonerzeuger/Tonerkenner.

von Dwayne (Gast)


Lesenswert?

Hallo,

danke für die bisherigen Antworten!

A. S. schrieb:
> Der Schreibtisch ist nur
> aktorik/Sensorik (Motoren, Endschalten) oder hat der auch eine
> Datenschnittstelle?

Beim test Tisch ist keine Datenschnittstelle bei.

A. S. schrieb:
> Warum den Raspi? Um 1000 Einstellungen zu speichern?
> Das macht jeder kleine µC, zur Not mit einem SO-8 Flash.

Es sollen ja mehrere Tische modifiziert werden. Wenn man es direkt auf 
den µC speichert ist es doch auch nur auf diesem Abrufbar, oder nicht? 
Der Raspi wäreim Netzwerk erreichbar für alle Controllerboards. 
(Alternativ auf nem Server-> aber keine Hardware/Lizenz vorhanden)


A. S. schrieb:
> Touch ist toll, wenn ihr eine gutes kennt. Ansonsten reicht m.E. ein
> einfaches Display mit 2-3 Buttons.

Das war zu Erst die Überlegung... aber mit Touch natürlich schöner und 
anspruchsvoller. Zudem muss das Projekt einen gewissen mindest Umfang 
haben.

Frank K. schrieb:
> 1. Chipkarte
> Für den Anfang würde ich erstmal auf RFID verzichten und I2C-Chipkarten
> verwenden. Die haben ein ganz normales I2C EEPROM drin.

RFID deswegen, weil die Token bereits vorhanden sind(Türöffner). 
Grundsätzlich aber eine sehr gute Alternative! Da würde man sich den 
Datenbankaufbau sparen. Problematisch nur, wenn der Nutzer seine Karte 
vergessen sollte... Dies wollten wir über eine zusätzliche Anmelde 
Möglichkeit z.B Pin abfedern.

Frank K. schrieb:
> Zum Display:
> Vorschlag:
> 
https://www.buydisplay.com/3-inch-graphic-touch-display-lcd-backlight-module-240x120-white-on-blue
> Touch-Controller:
> https://www.ti.com/product/TSC2003
> https://www.ti.com/product/TSC2007

Danke! Werden wir uns genauer anschauen.

Jörg W. schrieb:
> Wenn ein neuer iButton dazu kommt, kann das Display anzeigen, dass es
> dafür noch keine Daten gibt, dann muss der Nutzer ja ohnehin sich
> erstmal eine passende Position einstellen.

Interessantes Produkt. Wenn ich das richtig gegooglet eine moderne i2c 
Variante(u.a). Wird vermerkt und mit dem "Unbekannter Chip" war 
ebenfalls geplant.

Freddy schrieb:
> Ich kenne aktuell nur höhenverstellbare Tische wo während des Vorgangs
> ein Knopf aktiv gedrückt werden muss.  Ich würde wetten, dass dies ein
> Trick ist um nicht unter die Maschinenrichtlinie zu fallen.

Es gibt auch bereits Tische mit einfacher Memoryfunktion. Da drückt man 
einmal auf die 1 und er fährt in die gespeicherte Position, ohne 
gedrückt zu halten.


Nochmal zum Projekt:

Es gibt im Betrieb z.B 20 Tische. Jeder dieser 20 Tische soll durch z.B 
Auflegen der Karte auf die im Profil gespeicherte Position fahren. Man 
soll einfach zwischen z.B stehen und sitzen hin und her wechseln 
können(Über Taster oder halt eben Touch)
Dies wäre doch nur mit einer eigenen Datenbank möglich, oder? Lokal auf 
dem EEPROM wäre es auch nur lokal für den Tisch, oder?

Die I2C und und der iButton sind da eine sehr gute Alternative und 
werden vermerkt, danke dafür!

Bei diesem Projekt geht es in erster Linie nicht um den Sinn sondern den 
Umfang und Aufwand. Es stehen pro Person meine ich ~350 Stunden Zeit zur 
Verfügung(3 Personen). Die müssen leider, bis zum Januar 2021, 
dementsprechend gefüllt und nachgewiesen werden.

Ich hoffe ich habe nichts vergessen zu beantworten.
Danke jedenfalls erstmal an alle!

Gruß
Dwayne

von Dwayne (Gast)


Lesenswert?

Michael B. schrieb:

> Nimm einfach pro Tisch ein NFC fähiges Smartphone und programmiere eine
> App, kann auch in HTMP5 sein oder Basic.

Pro Tisch ein Smartphone? Das bleibt dann immer am Tisch?^^

Eine APP wäre ein Kann Kriterium. Von APP Programmierung haben wir drei 
keine Ahnung.

Michael B. schrieb:
> Bleibt nur, wie das Smartphone mit dem Motor im Tisch kommuniziert, und
> die Endlage erkennt. Das könnte man über serielle Verbindung via
> Bluetooth machen, aber einfacher: Per Ohrhörerbuchse und Mikro, man
> erzeugt einfach Töne und der Tisch sendet Töne zurück. Dazu braucht der
> Tisch bloss NE555 und NE567 Tonerzeuger/Tonerkenner.

Das Projekt wird am Ende benotet und muss auf Mikrocontroller basieren 
mit einem Gewissen Umfang. Die Idee klingt mir persönlich ein wenig zu 
unprofessionell(Ohne Negativ klingen zu wollen).

Gruß
Dwayne

von MaWin (Gast)


Lesenswert?

Dwayne schrieb:
> Das Projekt wird am Ende benotet und muss auf Mikrocontroller basieren
> mit einem Gewissen Umfang

Dann würde ich mal Touchscreen und damit Graphikdisplay streichen.

Ein Mikroconttoller der DIREKT (über Motortreiber) den Tisch verstellt 
und über Hallsensor an der Trapezspindel erfährt wie viele Umdtehungen 
und wann er den Endanschlag erreicht. Ein Taster up, ein Taster down. 
Ein Display würde ich mir schenken.

Das ist wenigstens ein erreichbares Ziel. Dafür reicht ein Arduino.

Die Kür wäre dann RFID über den vorhandenen Türöffnerchip. Da wird der 
Empfänger ja vorgegeben sein. Zur Sicherheit bewegt sich der Tisch nur 
wenn, während der RFID in der Nähe ist, ein dritter Taster gehalten 
wird. Es geht dann von selbst in die nötige Richtung bis zur mit den 
up/down Tastern eingestellten und nachträglich verstellbaren Position

Touchscreen und Graphik sind nur Einladung, euch zu übernehmen und 
verzetteln und nicht fertig zu werden. 0 Punkte.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Dwayne schrieb:
>> Wenn ein neuer iButton dazu kommt, kann das Display anzeigen, dass es
>> dafür noch keine Daten gibt, dann muss der Nutzer ja ohnehin sich
>> erstmal eine passende Position einstellen.
>
> Interessantes Produkt. Wenn ich das richtig gegooglet eine moderne i2c
> Variante(u.a).

Naja, "modern" – Dallas OneWire ist nun auch schon paar Jahre alt. Aber 
wohl bisschen jünger als I²C, ja.

Wie der Name sagt, es ist halt ein Eindrahtbus. Daher gibt's mit dem 
iButton auch diese hübschen "Coins", die nur zwei Kontakte haben.

Aber da du eine deiner Anforderungen erst jetzt näher spezifiziert hast 
(jeder Nutzer soll unabhängig vom Tisch seine Einstellungen bekommen), 
bräuchtest du natürlich hier einen iButton, der auch internen EEPROM 
hat, um die persönlichen Einstellungen darin zu speichern.

Außerdem hast du erst jetzt genannt, dass die RFIDs schon vorhanden 
sind. Das spricht natürlich in der Tat dafür, diese zu benutzen. Dann 
hast du nur wieder das Problem mit dem Speicherort, da du auf der 
RFID-Karte (anders als auf einem entsprechenden iButton) nichts 
speichern kannst. Das macht die Gesamtlösung natürlich in der Tat 
komplizierter, als das auf den ersten Blick aussah.

von Johannes S. (Gast)


Lesenswert?

Als Touchdisplay wurde ein Nextion eingeplant, das bekommt man in einem 
Tag ans Laufen.
Mit einem Tick mehr Arbeit nimmt man einen STM32 oder ESP32, da gibt es 
Beispiele mit lvgl als Grafiklib. Auch das bekommt man mit dieser 
Vorarbeit in ein paar Monaten hin.
ESP hätte den Vorteil das man per WiFi und MQTT auf Standards setzen 
kann. Wobei man auch das auf verkabelten STM32 hinbekommt.

lvgl:
https://lvgl.io/developers

von Dwayne (Gast)


Lesenswert?

Guten Morgen,

MaWin schrieb:
> Das ist wenigstens ein erreichbares Ziel. Dafür reicht ein Arduino

Lese ich daraus, dass unsere geplante Umsetzung sehr ambitioniert ist? 
Arduino soll höchstens als Test Platform dienen, aber direkt in C 
programmiert.

MaWin schrieb:
> Touchscreen und Graphik sind nur Einladung, euch zu übernehmen und
> verzetteln und nicht fertig zu werden. 0 Punkte.

Danke. Das wurde jetzt mehrfach erwähnt und ich denke wir werden es 
erstmal mit Tastern und nem normalen Display arbeiten. Wenn das läuft 
wird Touch in Angriff genommen.

Jörg W. schrieb:
> Aber da du eine deiner Anforderungen erst jetzt näher spezifiziert hast
> (jeder Nutzer soll unabhängig vom Tisch seine Einstellungen bekommen),

Habe ich Eingangs erwähnt:

Dwayne schrieb:
> Im Endeffekt soll das am Ende so ablaufen:
> An jedem Schreibtisch befindet sich ein RFID Reader und nen Touchscreen
> zur Bedienung. Man kommt nun an einen Schreibtisch, hält seine Karte
> davor und der Schreibtisch fährt in die zuvor gespeicherte Position.

Wenn das daraus nicht eindeutig hervorging. Entschuldigung!

Jörg W. schrieb:
> Das macht die Gesamtlösung natürlich in der Tat komplizierter, als das
> auf den ersten Blick aussah.

Richtig. Grundsätzlich aber nicht so schlimm, wenn's umsetzbar ist. Die 
Aufgaben werden dementsprechend aufgeteilt.

Johannes S. schrieb:
> Als Touchdisplay wurde ein Nextion eingeplant

Nextion ist ein Beispiel. Habe einiges positives darüber gelesen  den 
stm 32 und den ESP 32 schauen wir uns heute Abend nochmal genauer an. 
Beides haben wir schonmal gefunden.  Jedoch ganz am Anfang noch ohne 
genaueren Informationen.


Wäre denn der Aufbau einer kleinen Datenbank zur Kommunikation in 
Verbindung mit Mikrocontroller so ein großer Aufwand? Mal abgesehen von 
der überdimensioniertheit. Rein technisch gesehen:
Mirkocontroller <----wireless----> Datenbank.

Das sollte doch machbar sein, oder ? Zumindest kenne ich funktionierende 
Systeme, aber leider nicht den technischen Aufwand dahinter.

Touchscreen wird dann erstmal optional mit z.B Nextion oder dem von 
Frank K. genanntem Beispiel. Als Alternative gibts erstmal LCD mit 
Knöpfen.

Danke

Gruß
Dwayne

von IhrWisstEsSowieso (Gast)


Lesenswert?

Schule klingt schonmal nach Anfänger. Um die Leute nicht gleich hart mit 
klassischem C abzuturnen würde ich dir ein ESP32 Dev Board mit 
MicroPython empfehlen. Die gibts auch mit microSD Karten-Slot und viele 
HAL's in Form von entsprechenden Python Modulen.

Triggered C Grandpas in 3...2...1...

von Frank K. (fchk)


Lesenswert?

Dwayne schrieb:
> Frank K. schrieb:
>> 1. Chipkarte
>> Für den Anfang würde ich erstmal auf RFID verzichten und I2C-Chipkarten
>> verwenden. Die haben ein ganz normales I2C EEPROM drin.
>
> RFID deswegen, weil die Token bereits vorhanden sind(Türöffner).
> Grundsätzlich aber eine sehr gute Alternative! Da würde man sich den
> Datenbankaufbau sparen. Problematisch nur, wenn der Nutzer seine Karte
> vergessen sollte... Dies wollten wir über eine zusätzliche Anmelde
> Möglichkeit z.B Pin abfedern.

Bist Du Dir wirklich sicher, dass Du die auch nehmen kannst? Weißt Du 
den Standard? ISO14443A, ISO14443B, ISO15693? Irgendwas proprietäres, wo 
Du dann einfach keine Infos bekommst? 13MHz oder 125kHz?

Mir wäre das zu risikoreich. Ich rate Dir dringend, es genau so zu 
machen, wie ich es gesagt habe. Wenn das läuft, könnt Ihr in einem 
zweiten Schritt eigene Tags mit beschreibbarem Speicher besorgen, wo Ihr 
auch die Datenblätter dazu habt. Schaut dann hier vorbei:

https://www.st.com/en/nfc/st25-nfc-rfid-tags-readers.html

Und wenn auch das läuft, dann kannst Du Dich an den vorhandenen Tags 
versuchen.

fchk

von Martin V. (oldmax)


Lesenswert?

Hi
Also, soweit ich es beurteilen kann, ist dieses Projekt rein 
theoretisch. Ich persönlich habe da meine Zweifel, das ihr an den 
Schulen elektrisch höhenverstellbare Tische habt und diese dann auch so 
komfortabel werden sollen, das sie automatisch irgendwelche Höhen 
anfahren. Wenn überhaupt spricht nix gegen zwei Taster, "hoch" und 
"runter". Die Kraft der Schüler dürfte sicherlich ausreichen, diese 
Taster mal so für 5 Sekunden zu drücken. Aber ausschließen kann ich in 
dieser technisch verrückten Welt natürlich nichts mehr. Also zum Thema.
Die Wahl einer Programmiersprache sollte auf die Kenntnis des 
Projektleiters fokussiert sein. In einer Gruppe von 10 Leuten dürfte 
diese Diskussion schnell erledigt sein, nicht aber in einem Forum. Das 
geht bis hin zu Glaubenskriegen. Wenn der Projektleiter irgendeine 
Sprache spricht, sollte der Drops gelutscht sein. Wenn nicht, dann fällt 
die Wahl auf ein Teammitglied, wenn es Sprachkenntnisse hat. Wenn da gar 
nix ist, braucht ihr auch die Öffentlichkeit nicht fragen, denn dann 
wird es nix mit dem Projekt. Dann bleibt bei den Tastern und den evtl. 
Grenzlagen und Bodensensoren, falls die Tiche mal vom Boden abheben, 
weil sie bereits auf den Beinen aufliegen.
Auch wenn alles so wie gewünscht durchgeführt werden kann, frage ich 
mich, was die Datenbank da soll. Ein RFID Chip kann schon ein paar 
Informationen speichern, warum nicht im Chip selbst die "Betriebshöhe" 
vom Schreibtisch hinterlegen. Allerdings, und das halte ich schon für 
sinnvoll, wenn ein Terminal sowieso für eine Dateneingabe und Bedienung 
vorgesehen ist, dann muß es auch in der Lage sein, diese Information an 
den RFID Chip zu übertragen. Sonst ist es überflüssig.
Also, viel Erfolg und natürlich auch Spaß mit dem Schreibtischprojekt.
Gruß oldmax

von Dwayne (Gast)


Lesenswert?

IhrWisstEsSowieso schrieb:
> Schule klingt schonmal nach Anfänger. Um die Leute nicht gleich hart mit
> klassischem C abzuturnen

Anfänger richtig, dank Corona leider fast komplett ohne Voriwssen. C 
Kenntnisse sind zum Glück schon vorhanden, MikroC Grundwissen.

Klassisches C ist gewünscht. Viel mehr kann der Projektbetreuer auch 
nicht... selbst da haben wir unsere Zweifel.

Frank K. schrieb:
> Bist Du Dir wirklich sicher, dass Du die auch nehmen kannst? Weißt Du
> den Standard? ISO14443A, ISO14443B, ISO15693? Irgendwas proprietäres, wo
> Du dann einfach keine Infos bekommst? 13MHz oder 125kHz?

Das sind Mifare 125KHz Transponder. Die werden bei uns im Betrieb für 
alles benutzt.(Türe, Kopierer, Zeiterfassung...). Welcher ISO Standard 
dahinter hängt weiß ich leider nicht.

Wir werden uns Die Chipkarten bzw. den iButton genauer anschauen und in 
Betracht ziehen und wahrscheinlich umsetzen. Wenn dies läuft und noch 
Zeit ist kann man sich immernoch dem Thema RFID annehmen.

Martin V. schrieb:
> Ich persönlich habe da meine Zweifel, das ihr an den
> Schulen elektrisch höhenverstellbare Tische habt

Es ist ein Schulprojekt zum Thema Mikrocontroller. Das Thema mussten wir 
selbst suchen. Es wurden einige Themen abgewiesen und ausserdem wollten 
wir was machen, was nützlich ist und es so noch nicht gibt(Und solche 
Systeme, wie wir uns das gedacht haben, gibt es noch nicht in dem 
Umfang)

Die Schule bewertet lediglich das Endprojekt, die Präsentation und 
Dokumentation. Ausser Räumlichkeiten zum Treffen(inkl. Grundaustattung) 
wird nichts zur Verfügung gestellt.  Der Rest liegt vollständig in 
unseren Händen.


Das Ziel des Projekt ist am Ende Komfort und Zeitersparnis(Und natürlich 
das Lernen der Sprache/n und Technisches Wissen aneignen). Ich weiß 
nicht wie es bei euch aussieht, aber bei uns gibt es 20 Tische für >100 
Mitarbeiter. Diese Tische Müssen/sollten vorher online gebucht werden, 
wenn man ins Büro will. Ich persönlich habe ständig das Problem die 
optimale Höhe zum Sitzen/Stehen zu finden. Meistens merke ich es erst, 
wenn der Rücken/Nacken anfängt zu schmerzen, dass die Position falsch 
ist. (Faktoren wie Stuhl und Monitor Höhe aussen vor)



Martin V. schrieb:
> Also, viel Erfolg und natürlich auch Spaß mit dem Schreibtischprojekt.

Danke!

Gruß
Dwayne

von Ben S. (bensch123)


Lesenswert?

Dwayne schrieb:
> Würdet Ihr ggfls. eine andere Sprache wählen? Wenn ja, welche und
> wieso? (C wird präferiert)

C++. Unterstützen die meisten Compiler, insbesondere wenn es ein ARM ist 
und ist deutlich besser strukturierbar als reines C.

von MaWin (Gast)


Lesenswert?

Dwayne schrieb:
> Wir werden uns Die Chipkarten bzw. den iButton genauer anschauen

Vergiss es. Die sind nicht einfacher als ein RFID mit fertigem 
Empfänger.
Martin kennt halt kein RFID, nur OneWire iButtons.

Ben S. schrieb:
> C wird präferiert)
>
> C++. Unterstützen die meisten Compiler

Oje, für 2 Taster und 1 Motor ? Welches Klassendiagramm willst du da 
denn aufbauen ? Typisches Overengineering eines Fanboys. Ja, ein Arduino 
läuft unter C++, aber davon benutzt der Anfänger doch höchstens eine 
fertige Shield-Klasse.

von Johannes S. (Gast)


Lesenswert?

1.Regel hier: die MaWin Clones ignorieren, vor allem wenn es um Software 
geht. Hat sie/er/es doch schon beim Thema Display bewiesen.

Ich habe auch schon einige Projekte betreut, beim dualen Studium z.B. 
gibt es mehrere Projektarbeiten, und bei der ersten kommt es zu 75 % auf 
die Beschreibung und weniger auf den Inhalt an. Da kann man auch mit 
einem vermeintlich kleinen Projekt viel Papier erzeugen.
Wenn man wie vorgeschlagen eine Datenbank und zentrale Verwaltung 
einbringt, dann ist es ja schon umfangreicher. Schwieriger ist das man 
sich in D gleich erst wieder Gedanken um den Datenschutz machen muss 
weil man Personenbezogene Daten speichert.
Projektplanung, Einteilung in Entwicklungsphasen, Abschätzung von Zeit 
und Kosten, Gefährdungsbeurteilung (Fahrbetrieb birgt Gefahr des 
Einklemmens, Tische mit Verfahrung werden nicht ohne Grund Tippbetrieb 
haben), Ordentliche Softwareverwaltung mit Versionskontrolle, User 
Interface/User Experience usw., das ist moderne Produktentwicklung. 
Nicht mal eben was mit Arduino zusammenschustern. Und mit der 
Ideensammlung und einem Mindmap Diagramm ist schon der erste gute 
Schritt getan.
Wichtig wäre noch welcher Level Schule, ein 3 Wochen Praktikum ist 
natürlich was anderes als eine Arbeit an einer Fachhochschule.

von Thomas M. (elo-ocho)


Lesenswert?

Moinsen,

magst Du uns verraten, um welche es Schule, welchen Bildungsgang und um 
welches Fach es geht? Da Du auch von Betrieb schreibst, wird es wohl die 
Berufsschule sein, oder? Oder Wahlplficht Technik 8 Schuljahr 
Dorfschule? Leistungskurs Stufe 12 / 13 am tech. Gymnasium? 
Technikerschule?
Zeitansatz? Sind jetzt nicht Ferien?

Wie ist die Gruppe, auch räumlich, sind ja Ferien und Corona, 
zusammengesetzt? Raum in der Schule mit nix hast Du ja schon 
geschrieben.

Was ist die genaue Aufgabenstellung / die Bewertungskriterien?
Ich denke, dass hier Organisation und Dokumentation mind. 60 % 
ausmachen.
Beliebt sind hier hier 100 Punkte, unterteilt in 10 Kriterien x 10 
Punkte.
Je 10 Punkte für: Projektorganisation, also Gruppeneinteilung etc.; 
Sauberkeit, Ordnung (nicht! der fachliche Inhalt) usw. der Projektmappe; 
Definition und Verfolgung von Zeit- und Kostenzielen, der alte Gantt und 
wie sie alle heißen; Aufbau und Vortrag der Präsentation; 
Quellenangaben;...; ganz am Schluss noch noch je 10 % für das Programm 
und den fachlichen Inhalt der Mappe.

Teuere Fachbücher werdet Ihr wohl nicht brauchen, egal welche Sprache.
Wenn nicht C, vielleicht Assambler?

Da der inhaltliche Teil bei Schulprojekten meist wirklich nicht wichtig 
ist, nehmt einen kleinen, billigen Einpaltinenrechner mit einem Motor, 
an dem eine angemalte Scheibe ist, damit man sieht, wie der sich dreht, 
falls überhaupt Hardware gefordert ist.

Ansonsten schon richtig, ein gewisser Umfang muss gegeben sein, einfach 
2 Schalter die über einen Chip mit etwas Peripherie auf einen Motor 
wirken werden wohl zu "billig" sein.

Grüße,

Ocho

von Frank K. (fchk)


Lesenswert?

Dwayne schrieb:

> Frank K. schrieb:
>> Bist Du Dir wirklich sicher, dass Du die auch nehmen kannst? Weißt Du
>> den Standard? ISO14443A, ISO14443B, ISO15693? Irgendwas proprietäres, wo
>> Du dann einfach keine Infos bekommst? 13MHz oder 125kHz?
>
> Das sind Mifare 125KHz Transponder. Die werden bei uns im Betrieb für
> alles benutzt.(Türe, Kopierer, Zeiterfassung...). Welcher ISO Standard
> dahinter hängt weiß ich leider nicht.

Wenn es Mifare ist, dann ist da kein ISO-Standard dahinter. Das ganze 
ist von NXP, und die Dokumentation kostet Geld und ist nicht offen, wenn 
auch inzwischen gehackt. Also ganz schechte Voraussetzungen für Euch, 
weil da dann auch noch rechtliche Fragestellungen dahinter stecken.

> Wir werden uns Die Chipkarten bzw. den iButton genauer anschauen und in
> Betracht ziehen und wahrscheinlich umsetzen. Wenn dies läuft und noch
> Zeit ist kann man sich immernoch dem Thema RFID annehmen.

Genau. I2C Chipkarten sind am einfachsten. Die normalen Chipkarten mit 
T=0 und T=1 Protokoll und Infineon SLA-xxxxx Chip sind schon deutlich 
schwieriger - da gibts dann auch Pins und verschiedene strukturierte 
Datenbereiche usw. Das wollt Ihr nicht am Anfang haben.

fchk

von georg (Gast)


Lesenswert?

Dwayne schrieb:
> Wäre denn der Aufbau einer kleinen Datenbank zur Kommunikation in
> Verbindung mit Mikrocontroller so ein großer Aufwand?

Wie gross der ist hängt von euren Vorkenntnissen ab - also sehr gross.

Ausserdem sollte man vorsichtig sein: die zentrale Speicherung von 
persönlichen Daten ist ohne Einverständnis nicht zulässig, schliesslich 
könnte man aus eurer Datenbank ohne weiteres die Information holen, wer 
wo wie lange gearbeitet hat und ob er dabei womöglich eine bequemere 
Stellung zum Ausruhen gewählt hat..

Ich hatte solche Diskussionen schon in der Autoindustrie, da war z.B. 
die Erfassung von Werkzeugdaten vom Betriebsrat zu genehmigen, und das 
nach längerer Diskussion, was man mit den Daten alles anfangen könnte. 
Harmlose Daten gibt es schlicht nicht.

Ausserdem ist die zentrale Speicherung einfach nur überflüssig, die 
Positionsdaten werden in der Karte oder was sonst gespeichert.

Georg

von Dwayne (Gast)


Lesenswert?

Thomas M. schrieb:
> magst Du uns verraten, um welche es Schule, welchen Bildungsgang und um
> welches Fach es geht?

Es handelt sich um ein Abschlussprojekt an der Techniker Schule in 
Teilzeit. Also sollte schon anspruchsvoller sein.

Thomas M. schrieb:
> Was ist die genaue Aufgabenstellung / die Bewertungskriterien?

Die genaue Beurteilung ist nicht bekannt. Es wird jedoch ein hoher 
Fachlicher Teil/Umsetzung gefordert. Die Dokumenation sei wichtig, dass 
diese ordentlich ist, aber diese hat wohl nicht die größte Gewichtung. 
Bei der Vorstellung wurde bemängelt, dass das Projekt eigentlich zu 
klein ist( Was, wenn man sich die Vorjahres Projekte anschaut, auch 
Ironie sein könnte)

Thomas M. schrieb:
> Da der inhaltliche Teil bei Schulprojekten meist wirklich nicht wichtig
> ist

Wird leider viel Wert drauf gelegt... zumindest klang das so.

Frank K. schrieb:
> Also ganz schechte Voraussetzungen für Euch,
> weil da dann auch noch rechtliche Fragestellungen dahinter stecken.

Danke für die Information! Wusste ich nicht. Dann die Alternative mit 
z.B den I2C Karten.

georg schrieb:
> Ausserdem sollte man vorsichtig sein: die zentrale Speicherung von
> persönlichen Daten ist ohne Einverständnis nicht zulässig

DSVGO sei Dank. Das haben wir auch bereits bedacht und wollten 
urspünglich eine autarke Datenbank nehmen, welche abgekapselt vom 
normalen AD. Dort sollte dann nur Karten ID + PIN + Höheninformationen 
gespeichert werden. Natürlich kann man anhand der Karten ID es wieder 
auf eine Person zurück verfolgen... aber ich denke, dass wäre machbar.
Thema Datenbank ist sowieso erstmal außen vor nun.

von Johannes S. (Gast)


Lesenswert?

Dwayne schrieb:
> Natürlich kann man anhand der Karten ID es wieder
> auf eine Person zurück verfolgen...

dafür gibt es hashes, die ID in den hashvalue umrechnen ist eindeutig, 
aber aus dem hash kann man nicht die ID zurück rechnen. Wenn sowas 
bedacht wurde gibts doch wieder Pluspunkte :)

von Frank K. (fchk)


Lesenswert?

Dwayne schrieb:
> Frank K. schrieb:
>> Also ganz schechte Voraussetzungen für Euch,
>> weil da dann auch noch rechtliche Fragestellungen dahinter stecken.
>
> Danke für die Information! Wusste ich nicht. Dann die Alternative mit
> z.B den I2C Karten.

Genau. Das hier sind Karten mit PIN.

https://shop.primacards.de/de/Chipkarten-Infineon-SLE-5542-100-Stk-SLE4442.html

https://datasheetspdf.com/pdf/1264366/Infineon/SLE5542/1

fchk

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
Noch kein Account? Hier anmelden.