From 6de7d854f2b5246217e28f529dc86a22ecf530d4 Mon Sep 17 00:00:00 2001 From: Chris Spangler <chris.spangler@fau.de> Date: Thu, 9 Aug 2018 21:40:21 +0200 Subject: [PATCH] this is the fucking worst Former-commit-id: 898175bc6f8db191f8c08241440f08d335704f7a --- .../folien_vorstellung/slides/slides.tex | 16 ++++++++++++++-- ToyRep/firmware/axis.c | 5 +---- ToyRep/firmware/axis.h | 1 - ToyRep/firmware/hello.c | 3 --- 4 files changed, 15 insertions(+), 10 deletions(-) diff --git a/Praesentationen/folien_vorstellung/slides/slides.tex b/Praesentationen/folien_vorstellung/slides/slides.tex index e4c639c..2355de4 100644 --- a/Praesentationen/folien_vorstellung/slides/slides.tex +++ b/Praesentationen/folien_vorstellung/slides/slides.tex @@ -208,6 +208,18 @@ \section{Firmware} +\begin{frame}\frametitle{Firmware} + \begin{itemize} + \item Eigene Firmware f\"ur den Drucker geschrieben + \begin{itemize} + \item Hinzuf\"ugen weiterer Funltionen einfacher + \item ...und der Programmierer hat auch Spa{\ss} :) + \end{itemize} + \item Viele Implementierungen aus den \"Ubungen wiederverwendet + \item G-Codes nach RepRapFirmware + \item Kompatibel mit 3D-Druck-Software wie Pronterface oder Octoprint + \end{itemize} +\end{frame} \begin{frame}\frametitle{Firmware} \center{\includegraphics[width=0.8\textwidth]{img/system_small.pdf}} \end{frame} @@ -242,7 +254,7 @@ \begin{frame}\frametitle{L\"osung} \begin{itemize} \item Diesem kann teilweise durch ein beheiztes Druckbett entgegengewirkt werden, kann jedoch trotzdem noch passieren! - \item IDEE: Implementierung einer \"Uberwachungseinheit, die bei Erkennung den Druckprozess anh\"alt (und ggf. jmd. darauf hinweist) + \item IDEE: Implementierung einer \"Uberwachung, die bei Erkennung den Druckprozess anh\"alt (und ggf. jmd. darauf hinweist) \end{itemize} \end{frame} \begin{frame}\frametitle{Also welche M\"oglichkeiten gibt es?} @@ -273,7 +285,7 @@ \section{Budget} \begin{frame}\frametitle{Budget} -Ein detaillierterer Budgetplan findet sich auf unserem Wiki +Ein kurzer Auszug aus unserem Budgetplan... \begin{itemize} \item Einige Sachen wurden vom Lehrstuhl zur Verf\"ugung gestellt: \begin{itemize} diff --git a/ToyRep/firmware/axis.c b/ToyRep/firmware/axis.c index 94aa5da..7ee14d7 100644 --- a/ToyRep/firmware/axis.c +++ b/ToyRep/firmware/axis.c @@ -20,7 +20,6 @@ void setAxisValues_extruderBolt(axis* axis, motor* motor) { axis->motor = motor; axis->lastPosMm = 0; axis->stepsPerMm = (axis->motor->stepsPerRevo * axis->motor->gearRatio * gearRatio) / pitch; - axis->mmPerStep = 1.0 / axis->stepsPerMm; axis->isReversed = false; axis->homeReverse = false; axis->isRelative = true; @@ -32,7 +31,6 @@ void setAxisValues_M5(axis* axis, motor* motor) { axis->motor = motor; axis->lastPosMm = 0; axis->stepsPerMm = (axis->motor->stepsPerRevo * axis->motor->gearRatio) / pitch; - axis->mmPerStep = 1.0 / axis->stepsPerMm; axis->isReversed = false; axis->homeReverse = false; axis->isRelative = false; @@ -45,7 +43,6 @@ void setAxisValues_T25(axis* axis, motor* motor, uint8_t teeth) { axis->motor = motor; axis->lastPosMm = 0; axis->stepsPerMm = (axis->motor->stepsPerRevo * axis->motor->gearRatio) / (pitch * teeth); - axis->mmPerStep = 1.0 / axis->stepsPerMm; axis->isReversed = false; axis->homeReverse = false; axis->isRelative = false; @@ -83,7 +80,7 @@ void setAxisTarget(axis* axis, double targetPosMm, double speed) { int32_t stepsToMove = roundSteps((targetPosMm - axis->lastPosMm) * axis->stepsPerMm); axis->totalSteps += stepsToMove; if (axis->isReversed) stepsToMove = -stepsToMove; - uint16_t stepsPerSec = (speed / 60) / axis->mmPerStep; + uint16_t stepsPerSec = (speed / 60) * axis->stepsPerMm; setMotorMotion(axis->motor, stepsToMove, stepsPerSec); if (!axis->isRelative) axis->lastPosMm = targetPosMm; mutex_unlock(&(axis->lock)); diff --git a/ToyRep/firmware/axis.h b/ToyRep/firmware/axis.h index a01be04..a4d1e94 100644 --- a/ToyRep/firmware/axis.h +++ b/ToyRep/firmware/axis.h @@ -16,7 +16,6 @@ typedef struct { double homePos; double volatile lastPosMm; double stepsPerMm; - double mmPerStep; double maxMmPerMin; uint32_t endstopPort; uint16_t endstopPin; diff --git a/ToyRep/firmware/hello.c b/ToyRep/firmware/hello.c index 31bea3f..da5deae 100644 --- a/ToyRep/firmware/hello.c +++ b/ToyRep/firmware/hello.c @@ -187,7 +187,6 @@ void thread_axis(cyg_addrword_t arg) setup_input_gpio(X_ENDSTOP_PORT, X_ENDSTOP_PIN, false); setMotorValues_28BYJ48(&mot_x, X_AXIS_PORT, X_AXIS_PIN1, X_AXIS_PIN2, X_AXIS_PIN3, X_AXIS_PIN4); setAxisValues_T25(&axis_x, &mot_x, 20); - axis_x.mmPerStep *= 1.01875; axis_x.stepsPerMm /= 1.01875; axis_x.maxMmPerMin = 300.0; axis_x.homePos = 100.0; @@ -203,7 +202,6 @@ void thread_axis(cyg_addrword_t arg) setup_input_gpio(Y_ENDSTOP_PORT, Y_ENDSTOP_PIN, false); setMotorValues_28BYJ48(&mot_y, Y_AXIS_PORT, Y_AXIS_PIN1, Y_AXIS_PIN2, Y_AXIS_PIN3, Y_AXIS_PIN4); setAxisValues_T25(&axis_y, &mot_y, 20); - axis_y.mmPerStep *= 1.0125; axis_y.stepsPerMm /= 1.0125; axis_y.maxMmPerMin = 300.0; // could actually be 340 axis_y.homePos = 100.0; @@ -231,7 +229,6 @@ void thread_axis(cyg_addrword_t arg) setMotorValues_28BYJ48(&mot_e, E_AXIS_PORT, E_AXIS_PIN1, E_AXIS_PIN2, E_AXIS_PIN3, E_AXIS_PIN4); setAxisValues_extruderBolt(&axis_e, &mot_e); axis_e.maxMmPerMin = 30.0; - axis_e.mmPerStep /= 1.064516129; axis_e.stepsPerMm *= 1.064516129; axis_e.isReversed = true; -- GitLab