mirror of
https://github.com/vofy/fekt-scara.git
synced 2025-06-27 23:09:22 +02:00
Backup
This commit is contained in:
parent
8c2b55e01a
commit
312918da1f
5 changed files with 119 additions and 55 deletions
|
@ -220,7 +220,7 @@
|
|||
}
|
||||
|
||||
@misc{morencyam_rook,
|
||||
autor = {{morencyam}},
|
||||
author = {{morencyam}},
|
||||
title = {Mini StealthBurner E3D v6 Bowden - Rook},
|
||||
year = {2023},
|
||||
annotate = {[online]},
|
||||
|
|
Binary file not shown.
|
@ -8,7 +8,7 @@ FreeCAD je univerzální parametrický modelovací systém vydaný pod licencí
|
|||
|
||||
Můj návrh tiskárny vychází z~projektu x-scara~\cite{x-scara}. Ve svém návrhu byly použity shodné rozměry hliníkových profilů, trapézových a~vodících tyčí. Vzhledem k~tomuto faktu se můj návrh projektu x-scara velmi podobá, ačkoliv můj návrh nevyužívá žádný díl z~tohoto projektu.
|
||||
|
||||
Model je rozdělen do sedmi částí. První je \textbf{základna}, druhou je \textbf{rameno}, třetí je \textbf{tisková hlava}, čtvrtou \textbf{extruder} (VORON M4), pátou \textbf{displej} a~šestou \textbf{držák cívky filamentu}. Sestava obsahující všechny tyto zmiňované části je zobrazena na obrázcích níže\ref{fig:overview}
|
||||
Model je rozdělen do sedmi částí. První je \textbf{základna}, druhou je \textbf{rameno}, třetí je \textbf{tisková hlava}, čtvrtou \textbf{extruder} (VORON M4), pátou \textbf{displej} a~šestou \textbf{držák cívky filamentu}. Sestava obsahující všechny tyto zmiňované části je zobrazena na obrázcích níže \ref{fig:overview}.
|
||||
|
||||
Soubory ve formátu FCStd (zdrojové soubory modelů) jsou organizovány podle části, do které spadají. Pro generování souborů ve formátu STEP vhodného pro slicer slouží python skript, který využívá FreeCAD API. Tento skript postupně otevře, přepočítá a~exportuje všechny díly. Skript exportuje pouze ty objekty, které jsou obsažené v~kontejneru Std Part. Jako název souboru se volí název dílu, který obsahuje i~počet výtisků konkrétního dílu. K~výrobě tištěných dílů pak postačí adresář step a~soubory, které obsahuje.
|
||||
|
||||
|
@ -191,11 +191,13 @@ Doporučenými materiály pro tisk jsou: \textbf{ASA}, ABS nebo PETG. Použité
|
|||
|
||||
Na tisk dílů byly použity 3 cívky filamentu. Dvě základní -- šedé -- barvy a jedna doplňkové -- modré -- barvy. Materiál, ze kterého jsou díly zhotoveny, je ASA (Akrylonitril Styren Akrylát). Tento materiál se svými vlastnostmi velice podobá materiálu ABS (Akrylonitril Butadien Styren). Oproti němu má však lepší chemickou odolnost vůči olejům, kyselinám a dalším látkám. Mezi jeho největší přednost však patří odolnost vůči UV záření (oproti ABS).
|
||||
|
||||
\subsubsection{Konstrukce tiskárny}
|
||||
\subsubsection{Sestavení tiskárny}
|
||||
|
||||
Prvním krokem ještě před zahájením stavby bylo odmaštění lineárně valivých ložisek od přepravního oleje v lázni s isopropyl alkoholem. Po odmaštění byla tato ložiska namazána mazivem. K tomuto účelu bylo použito plastické mazivo Mobilux EP2 o vizkoskozitě třídy 2 dle NLGI.
|
||||
|
||||
Jako první je vhodné začít konstrukcí základny. K tomu jsou potřeba hliníkové profily 2x40x400~mm a 2x~20x20x130~mm. Do obou z profilů 20x40x400~mm je potřeba vyvrtat 4 otvory o průměru 4~mm, tak aby bylo bylo možné dosáhnout šestihranným klíčem k hlavě šroubu a dotáhnout jej. Tiskárna totiž použává techniku zvanou "Blind Joint", kdy se do otvoru v připojovaném profilu navrtá závit, do kterého se částečně namontuje šroub, hlava šroubu se zasune do slotu druhého profilu a vyvrtaným otvorem se šroub utáhne. Tímto způsobem vznikne velice pevný spoj. U této techniky je potřeba dbát na pravoúhlý řez profilu, jinak by nemuselo jít rám složit nebo by se základna ramene nemohla pohybovat v ose Z plynule. Před smontováním těchto čtyřech profilů je potřeba přimontovat každou ze tří DIN lišt dvěmi upínacími díly. Následně možné postavit přední část základny
|
||||
Jako první je se začalo s konstrukcí základny. V této části bylo potřeba si dát pozor na včasnou montáž DIN lišt. Nejprve byl smontován rám a poté díly, které kotví vodící tyče. V dalším kroku byl sestaven první segment ramene a na řemenice byl nasazen a napnut řemen. Druhý segment je konstrukčně mnohem jednodušší a nemá žádné pohyblivé části. Ten bylo potřeba nasadit na hřídel a dotáhnout kotvící díl. Poté byla sestavena základna ramene a k ní byly upevněny krokové motory. Poté bylo možné rameno a základnu ramene spojit. V tuto chvíli bylo potřeba přimontovat dělící panel mezi prostorem tiskárny a skříní s elektronikou. V dalším kroku již bylo možné rameno nasadit na vodící tyče základny a zasunout vodící tyče do protilehlého dílu a vodící tyče ukotvit. Následovala konstrukce a montáž tiskové hlavy.
|
||||
|
||||
Následovala výroba kabelů k propojení jednotlivých elektronických komponent. Na řídící desku byly připojeny drivery a DCDC convertor. Po zapojení elektroniky byly přimontovány krycí panely a celá skříň s elektronikou zakrytována PMMA deskou.
|
||||
|
||||
\subsection{Kalibrace tiskárny}
|
||||
|
||||
|
@ -218,48 +220,42 @@ Klipper je část firmwaru Klipper, která běží na počítači uvnitř 3D tis
|
|||
\subsubsection{Přímá a~inverzní kinematika}
|
||||
Kinematické transformace se používají k~převodu natočení kloubů na souřadnice koncového bodu (přímá transformace) a~naopak (inverzní transformace). Pro výpočet transformace je třeba znát délky ramen \(L_1\) a~\(L_2\), offsety ramen \(x_{offset}\) a~\(y_{offset}\) a~Elbow Crosstalk Ratio (ECR).
|
||||
|
||||
Elbow Crosstalk Ratio (převodový poměr řemenice v~ose ramene vůči řemenici v~ose kloubu) získáme dosazením počtu zubů řemenice ramene \(n_S\) a~počtu zubů řemenice v~kloubu \(n_E\).
|
||||
Elbow Crosstalk Ratio (převodový poměr řemenice v~ose ramene vůči řemenici v~ose kloubu) získáme dosazením počtu zubů řemenice ramene a~počtu zubů řemenice v~kloubu.
|
||||
|
||||
\begin{equation}
|
||||
ECR = \frac { n_S } { n_E }
|
||||
\end{equation}
|
||||
|
||||
kde \(n_S\) je počet zubů řemenice ramene a \(n_E\) je počet zubů řemenice v kloubu.
|
||||
|
||||
\subsubsection{Přímá kinematika}
|
||||
|
||||
Protože rotace motoru v~ose ramene ovlivňuje rotaci motoru v~ose kloubu, je třeba tento vliv kompenzovat. Tím dostaneme úhel \(\Phi_E\), který je potřeba pro výpočet skutečné polohy nástroje. Pro výpočet známe úhel motoru ramene \(\Phi_{S_M}\) a~úhel motoru kloubu \(\Phi_{S_E}\).
|
||||
Protože rotace motoru v~ose ramene ovlivňuje rotaci motoru v~ose kloubu, je třeba tento vliv kompenzovat. Tím dostaneme úhel \(\phi_E\), který je potřeba pro výpočet skutečné polohy nástroje.
|
||||
|
||||
\begin{equation}
|
||||
\Phi_S = \Phi_{S_M}
|
||||
\phi_S = \phi_{S_M}
|
||||
\end{equation}
|
||||
|
||||
\begin{equation}
|
||||
\Phi_E = \Phi_{E_M} - \frac{ \Phi_{S_M} } { ECR }
|
||||
\phi_E = \phi_{E_M} - \frac{ \phi_{S_M} } { ECR }
|
||||
\end{equation}
|
||||
|
||||
Pro další výpočty potřeba převést úhly motorů \(\Phi_{S_M}\) (shoulder) a~\(\Phi_E\) (elbow) na radiány, protože goniometrické funkce v~knihovně math programovacího jazyka Python pracuje s~úhly v~radiánech. V~kódu pak lze pro převod použít metodu \texttt{math.radians()}.
|
||||
kde \(ECR\) je Elbow Crosstalk Ratio, \(\phi_{S_M}\) je úhel motoru ramene a \(\phi_{S_E}\) je úhel motoru kloubu.
|
||||
|
||||
Poté je potřeba vypočítat polohu v kartézském souřadnicovém systému.
|
||||
|
||||
\begin{equation}
|
||||
\phi_S = \Phi_S \cdot \frac { \pi } { 180 } [\si{\radian}]
|
||||
x = L_1 \cdot \sin(\phi_S) + L_2 \cdot \sin(\phi_S + \phi_E)
|
||||
\end{equation}
|
||||
|
||||
\begin{equation}
|
||||
\phi_E = \Phi_E \cdot \frac { \pi } { 180 } [\si{\radian}]
|
||||
y = L_1 \cdot \cos(\phi_S) + L_2 \cdot \cos(\phi_S + \phi_E)
|
||||
\end{equation}
|
||||
|
||||
Poté je potřeba přičíst odsazení souřadného systému nástroje vůči souřadnému systému báze (konkrétně odsazení kloubu ramene vůči počátku tiskové podložky).
|
||||
Nakonec je potřeba přepočítat souřadnice nástroje vůči počátku tiskové podložky na souřadnice vůči počátku tiskárny.
|
||||
|
||||
\begin{equation}
|
||||
x = \sin(\phi_S) \cdot L_1 + \sin(\phi_S + \phi_E) \cdot L_2
|
||||
\end{equation}
|
||||
|
||||
\begin{equation}
|
||||
y = \cos(\phi_S) \cdot L_1 + \cos(\phi_S + \phi_E) \cdot L_2
|
||||
\end{equation}
|
||||
|
||||
Nakonec je potřeba přepočítat souřadnice nástroje vůči středu tiskové podložky na souřadnice vůči počátku tiskárny.
|
||||
|
||||
\begin{equation}
|
||||
x_{raw} = - x + x_{offset}
|
||||
x_{raw} = x + x_{offset}
|
||||
\end{equation}
|
||||
|
||||
\begin{equation}
|
||||
|
@ -267,21 +263,14 @@ Nakonec je potřeba přepočítat souřadnice nástroje vůči středu tiskové
|
|||
\end{equation}
|
||||
|
||||
\subsubsection{Inverzní kinematika}
|
||||
Nejprve je potřeba převést absolutní souřadnice nástroje vůči počátku tiskárny na souřadnice vztažené k~středu tiskové podložky.
|
||||
Nejprve je potřeba převést absolutní souřadnice nástroje vůči počátku tiskárny na souřadnice vztažené k~počátku tiskové podložky.
|
||||
|
||||
\begin{equation}
|
||||
x = - (x_{raw} - x_{offset})
|
||||
x = x_{raw} + x_{offset}
|
||||
\end{equation}
|
||||
|
||||
\begin{equation}
|
||||
y = (y_{raw} - y_{offset})
|
||||
\end{equation}
|
||||
|
||||
Dalším krokem je výpočet vzdálenosti od počátku.
|
||||
|
||||
\begin{equation}
|
||||
% cSpell:disable-next-line
|
||||
hypot = \sqrt{x^2 + y^2} [\si{\mm}]
|
||||
y = y_{raw} + y_{offset}
|
||||
\end{equation}
|
||||
|
||||
Dále se vypočítají úhly ramen \(\phi_E\) (elbow) a~\(\phi_S\) (shoulder).
|
||||
|
@ -290,15 +279,21 @@ Dále se vypočítají úhly ramen \(\phi_E\) (elbow) a~\(\phi_S\) (shoulder).
|
|||
\phi_E = arccos \left( \frac { x^2 + y^2 + L_1^2 + L_2^2 } { 2 \cdot L_1 \cdot L_2 } \right) [\si{\radian}]
|
||||
\end{equation}
|
||||
|
||||
kde \(L_1\) a~\(L_2\) jsou délky ramen.
|
||||
kde \(x\) a \(y\) jsou souřadnice v kartézském systému a \(L_1\) a~\(L_2\) jsou délky ramen.
|
||||
|
||||
\begin{equation}
|
||||
% cSpell:disable-next-line
|
||||
\phi_S = arctan2 \left( x, y \right) - arccos \left( \frac { x^2 + y^2 + L_1^2 - L_2^2 } { 2 \cdot L_1 \cdot hypot } \right) [\si{\radian}]
|
||||
\phi_S = arctan2 \left( x, y \right) - arccos \left( L_2 \cdot sin(\phi_E), L_1 + L_2 \cdot cos(\phi_E) \right) [\si{\radian}]
|
||||
\end{equation}
|
||||
|
||||
kde \(L_1\) a~\(L_2\) jsou délky ramen.
|
||||
kde \(x\) a \(y\) jsou souřadnice v kartézském systému a \(L_1\) a~\(L_2\) jsou délky ramen.
|
||||
|
||||
% \section{Konfigurace tiskárny}
|
||||
V poslední řadě je potřeba vykompenzovat ECR (Elbow Crosstalk Ratio). Tím získáme úhel krokových motorů \(\phi_{S_M}\) a \(\phi_{E_M}\).
|
||||
|
||||
% \section{Kalibrace tiskárny}
|
||||
\begin{equation}
|
||||
\phi_{S_M} = \phi_S
|
||||
\end{equation}
|
||||
|
||||
\begin{equation}
|
||||
\phi_{E_M} = \phi_E + \frac{\phi_S}{ECR} [\si{\radian}]
|
||||
\end{equation}
|
|
@ -11,14 +11,16 @@
|
|||
\acro{FFF}{Fused Filament Fabrication -- Modelování tavným nanášením}
|
||||
\acro{IMS}{Insulated Metal Substrate -- Izolovaná deska plošných spojů s kovovým substrátem}
|
||||
\acro{MCPCB}{Metal Core PCB -- Deska plošnách spojů s kovovým jádrem}
|
||||
\acro{MCU}{Microcontroller Unit -- Mikrokontrolér}
|
||||
\acro{RPC}{Remote Procedure Call -- Vzdálené volání procedur}
|
||||
\acro{PEI}{Polyetherimide -- Polyetherimid}
|
||||
\acro{PETG}{Polyethylene Terephthalate Glycol -- Polyethylentereftalát-glykol}
|
||||
\acro{PTFE}{Polytetrafluoroethylene -- Polytetrafluorethylen}
|
||||
\acro{PMMA}{Polymethylmethacrylate -- Polymethylmethakrylát}
|
||||
\acro{PLA}{Polylactic Acid -- Kyselina polymléčná}
|
||||
\acro{SCARA}{Selective Compliance Assembly Robot Arm}
|
||||
\acro{SLA}{Stereolithography -- Stereolitografie}
|
||||
\acro{SLS}{Selective Laser Sintering -- Selektivní spékání laserem}
|
||||
\acro{TCP}{Tool Center Point -- Poloha koncového bodu}
|
||||
\acro{MCU}{Microcontroller Unit -- Mikrokontrolér}
|
||||
\acro{RPC}{Remote Procedure Call -- Vzdálené volání procedur}
|
||||
|
||||
\end{acronym}
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
\chapter{Skripty}
|
||||
|
||||
\chapter{Soupisy}
|
||||
|
||||
\section{Soupis materiálu}
|
||||
|
@ -28,9 +26,9 @@ Závitová vložka M5x7x8 & 4 ks \\
|
|||
Šroub M3x55 SHCS (ISO 4762) & 3 ks \\
|
||||
Šroub M2x10 SHCS (ISO 4762) & 4 ks \\
|
||||
Flexible Shaft Coupling 8x5 mm & 1 ks \\
|
||||
8 mm rod 40 mm length (or hollow axis) & 1 ks \\
|
||||
8 mm rod 60 mm length (or hollow axis) & 1 ks \\
|
||||
8 mm rod 80 mm length (or hollow axis) & 1 ks \\
|
||||
Ocelová tyč 8 mm 40 mm & 1 ks \\
|
||||
Ocelová tyč 8 mm 60 mm & 1 ks \\
|
||||
Ocelová tyč 8 mm 80 mm & 1 ks \\
|
||||
Lineárně valivé ložisko LM8UU & 4 ks \\
|
||||
Lineárně valivé ložisko LM8LUU & 1 ks \\
|
||||
Radiální kuličkové ložisko 623 (OD10/ID3/T4) & 6 ks \\
|
||||
|
@ -68,25 +66,94 @@ Konektor s pojistkou (IEC 60320 C13) & 1 ks \\
|
|||
Kolébkový vypínač & 1 ks \\
|
||||
Keystone RJ45 Cat5E & 1 ks \\
|
||||
Konektor RJ45 Cat5E & 1 ks \\
|
||||
Konektor XH2.5 (2pin) & 7 ks \\
|
||||
Konektor XH2.5 (3pin) & 1 ks \\
|
||||
Konektor XH2.5 (4pin) & 4 ks \\
|
||||
Konektor XH2.5 (6pin) & 4 ks \\
|
||||
Konektor DuPont 2.54mm (1pin) & 1 ks \\
|
||||
Konektor DuPont 2.54mm (3pin) & 1 ks \\
|
||||
Konektor JST XH2.5 F (2pin) & 7 ks \\
|
||||
Konektor JST XH2.5 M (2pin) & 4 ks \\
|
||||
Konektor JST XH2.5 F (3pin) & 1 ks \\
|
||||
Konektor JST XH2.5 F (4pin) & 4 ks \\
|
||||
Konektor JST XH2.5 F (6pin) & 4 ks \\
|
||||
Konektor DuPont 2.54mm F (1pin) & 1 ks \\
|
||||
Konektor DuPont 2.54mm F (2pin) & 1 ks \\
|
||||
Konektor DuPont 2.54mm F (3pin) & 1 ks \\
|
||||
Faston RF-F 608P & 4 ks \\
|
||||
Faston RF-F 408P & 3 ks \\
|
||||
Dutinky 0,5 mm2 & 8 ks \\
|
||||
Vidlice kabelová 0,75 mm2 & 5 ks \\
|
||||
Ventilátor 60x60x15 mm & 2 ks \\
|
||||
Mosazné distanční sloupky M3 (4mm) & 10 ks \\
|
||||
Mosazné distanční sloupky M3 (25mm) & 4 ks \\
|
||||
DIN lišta TS 35X7.5 1M/ST/ZN & 1 m \\
|
||||
Distanční sloupek M3 (4mm) & 10 ks \\
|
||||
Distanční sloupek M3 (25mm) & 4 ks \\
|
||||
DIN lišta TS 35X7.5 1M/ST/ZN & 1 ks \\
|
||||
MicroSD karta (RPi + MCU) & 2 ks \\
|
||||
Nylonová struna & 2 m \\
|
||||
PTFE trubička (OD 4mm ID 2mm) & 1 m \\
|
||||
ASA 850g šedá & 2 ks \\
|
||||
ASA 850g modrá & 1 ks
|
||||
ASA 850g modrá & 1 ks \\
|
||||
VORON M4 kit & 1 ks
|
||||
\end{longtable}
|
||||
|
||||
\section{Soupis dílů}
|
||||
|
||||
\setlength\LTleft{0pt}
|
||||
\setlength\LTright{0pt}
|
||||
\begin{longtable}{llcc}
|
||||
\textbf{Část} & \textbf{Označení} & \textbf{Počet} & \textbf{Barva} \\
|
||||
Rameno & Arm\_Base\_Bottom & 1 & Šedá \\
|
||||
& Arm\_Base\_Hub\_Bottom & 1 & Modrá \\
|
||||
& Arm\_Base\_Hub\_Top & 1 & Modrá \\
|
||||
& Arm\_Base\_Mount & 2 & Modrá \\
|
||||
& Arm\_Base\_Top & 1 & Šedá \\
|
||||
& Arm\_Elbow\_Bottom & 1 & Šedá \\
|
||||
& Arm\_Elbow\_Hub & 1 & Modrá \\
|
||||
& Arm\_Elbow\_Top & 1 & Šedá \\
|
||||
& Arm\_Shoulder\_Bottom & 1 & Šedá \\
|
||||
& Arm\_Shoulder\_Top & 1 & Šedá \\
|
||||
Základna & Base\_Bearing\_Holder & 1 & Šedá \\
|
||||
& Base\_Electronics\_Mount\_MCU & 1 & Šedá \\
|
||||
& Base\_Electronics\_Mount\_PSU & 1 & Šedá \\
|
||||
& Base\_Electronics\_Mount\_RPI & 1 & Šedá \\
|
||||
& Base\_Electronics\_USB\_Connector & 2 & Šedá \\
|
||||
& Base\_Handle & 1 & Šedá \\
|
||||
& Base\_Joint\_Bottom\_Left & 1 & Modrá \\
|
||||
& Base\_Joint\_Bottom\_Right & 1 & Modrá \\
|
||||
& Base\_Joint\_Clamp & 4 & Šedá \\
|
||||
& Base\_Joint\_Tip\_Bottom & 1 & Modrá \\
|
||||
& Base\_Joint\_Tip\_Top & 1 & Modrá \\
|
||||
& Base\_Joint\_Top\_Left & 1 & Modrá \\
|
||||
& Base\_Joint\_Top\_Right & 1 & Modrá \\
|
||||
& Base\_Motor\_Mount & 1 & Šedá \\
|
||||
& Base\_Panel\_Blank & 2 & Šedá \\
|
||||
& Base\_Panel\_Bottom & 1 & Šedá \\
|
||||
& Base\_Panel\_Connectors & 1 & Šedá \\
|
||||
& Base\_Panel\_Display & 1 & Šedá \\
|
||||
& Base\_Panel\_Fan\&Switch & 1 & Šedá \\
|
||||
& Base\_Panel\_Fan & 1 & Šedá \\
|
||||
& Base\_Panel\_Top & 1 & Šedá \\
|
||||
& Base\_Separator\_Cable\_Passthrough\_Cap & 1 & Šedá \\
|
||||
& Base\_Separator\_Cable\_Passthrough & 1 & Šedá \\
|
||||
& Base\_Separator\_Mount\_Top & 1 & Šedá \\
|
||||
& Electronics\_DIN\_Rail\_Holder & 6 & Šedá \\
|
||||
Displej & Display\_Case\_Back & 1 & Šedá \\
|
||||
& Display\_Case\_Frame\_Button & 2 & Šedá \\
|
||||
& Display\_Case\_Frame & 1 & Šedá \\
|
||||
& Display\_Hinge\_Panel\_Lock & 1 & Šedá \\
|
||||
& Display\_Hinge\_Panel & 1 & Šedá \\
|
||||
Extruder & Extruder\_End\_Plate\_Modified & 1 & Šedá \\
|
||||
Držák cívky & Spool\_Holder & 1 & Šedá \\
|
||||
Tisková hlava & Toolhead\_Cover & 1 & Šedá \\
|
||||
& Toolhead\_Duct\_4010\_Left & 1 & Šedá \\
|
||||
& Toolhead\_Duct\_4010\_Right & 1 & Šedá \\
|
||||
& Toolhead\_Mount & 1 & Šedá \\
|
||||
& Toolhead\_Retainer & 1 & Šedá
|
||||
\end{longtable}
|
||||
|
||||
\emph{Pro konstrukci celé tiskárny jsou potřeba i díly extruderu VORON M4.}
|
||||
|
||||
\chapter{Obsah elektronické přílohy}
|
||||
|
||||
\begin{itemize}
|
||||
\item \verb|debian-config| - Nastavení operačního systému mikropočítače
|
||||
\item \verb|klipper| - Nové nebo upravené soubory potřebné k implementaci SCARA kinematiky do firmwaru Klipper
|
||||
\item \verb|klipper-config| - Nastavení tiskárny
|
||||
\item \verb|prusaslicer-config-bundle| - Profil tiskárny pro PrusaSlicer
|
||||
\item \verb|step| - Soubory ve formátu STEP
|
||||
\item \verb|vykresova-dokumentace| - Výkresová dokumentace dílů
|
||||
\end{itemize}
|
Loading…
Reference in a new issue