Forum: Compiler & IDEs Schrittmotor um.Grad bewegen


von Cyb3r (Gast)


Lesenswert?

Hallo
ich programmiere in C++ und bin gerade an einer Implementierung den 
Schrittmotor um soundsoviel grad zu Bewegen. Falls abweicchung vorhanden 
von dem genauen Wert wird dies aus dem Display ausgegeben.

Step Angel - 15 Grad

Es gibt VOLLSCHRITT und HALBSCHRITT
1
  for(int i = 0; i < (angle / 15); i++)
2
    step(speed,richtung,VOLLSCHRITT);
3
  if(angle % 15)
4
  {
5
    // Abweichung auf dem LCD Display ausgeben
6
    // Nicht implementiert, mein Code war mehr als 3kb 
7
  }

Ich hatte per if Überprüfung und % geguckt ob der wert  (angle / 15.00)
>(angle / 15) + 0.75 liegt, dann solte noch ein Vollscghritt gemacht werden und 
falls
(angle / 15.00) <= (angle / 15) + 0.75 && (angle / 15.00) > (angle / 15) 
+ 0.25, dann sollte noch ein Halbschritt gemacht werde.

Nur mein Sourcecode mit der Überprüfung war Kompiliert ca. 3000 Byte 
größer als ohne die Überprüfung.

Hat dfür jemand eine Kompakte (kleine / Kompiliert kleine) Lösung, dass 
muss doch viel viel kleienr gehen.

Dank im Voraus
Grüße Nik

von Tauwetter (Gast)


Lesenswert?

Wundere Dich nicht, wenn hier keiner antwortet. Niemand versteht, was Du 
willst. Vielleicht Du selbst ja auch nicht.

Man könnte vermuten, dass Du ein PC-Programm schreiben möchtest, mit dem 
eine Rakete in 15° Schritten um den Mond fliegt. Aber das ist nur eine 
Vermutung meinerseits :-)

von Cyb3r (Gast)


Lesenswert?

Ähm also ich sehe alles klar.
Ich habe einen Schrittmotor !!!
Ein Schritt meines Schrittmotors entspricht 15 Grad rotation um die 
eigene Achse. Somit entspricht eine halber Schrit 7.5 Grad um die eigene 
Achse.

Nun möchte ich mir eine Funktione schreiben der man sagen kann drhe dich 
um z.B. 180 Grad und da nicht immer die genau Gradzahl erreicht werden 
kann möchte ich das ganze annäherungsweise machen, da leigt jetzt mein 
Problem.

Meine oben beschriebene überprüfung verbraucht wie gesagt ca. 3kb 
Flash-Speicher, was einfach zuviel ist.

Nun hat irgnedjemand einen anderen Lösungsvorschlag oder soetwas schon 
einmal Programmiert?

MFG (ist es jetzt versätndlich aonsonten bitte Feddback nein ist es 
nicht, dann mache ich eine Zeichnung)

von Cyb3r (Gast)


Lesenswert?

Also annäherungsweise dann noch einen ganzen Schritt oder halben Schritt 
mehr zumachen als die for-Schleife macht.
Ist meine überprüfung verständlich?

von Grrrr (Gast)


Lesenswert?

Cyb3r schrieb:
> Hat dfür jemand eine Kompakte (kleine / Kompiliert kleine) Lösung, dass
> muss doch viel viel kleienr gehen

Ja. Keine Flieskommaberechnungen benutzen.
Drücke die Vergleiche mit Integers aus.

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.