Jump to content

Component: 3D Printer (Scenarios): Difference between revisions

From Flowcode Help
No edit summary
No edit summary
Line 17: Line 17:
==Component Source Code==
==Component Source Code==


Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_3D_Printer.fcfx FC_Comp_Source_3D_Printer.fcfx]
Please click here to download the component source project: [https://www.flowcode.co.uk/wiki/componentsource/FC_Comp_Source_temp/3D_Printer.fcfx FC_Comp_Source_temp/3D_Printer.fcfx]


Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_3D_Printer.fcfx FC_Comp_Source_3D_Printer.fcfx]
Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_temp/3D_Printer.fcfx FC_Comp_Source_temp/3D_Printer.fcfx]


==Detailed description==
==Detailed description==
Line 74: Line 74:
{{Fcfile|Maze_Builder_3DP.fcfx|Maze_Builder_3DP}}
{{Fcfile|Maze_Builder_3DP.fcfx|Maze_Builder_3DP}}
[[File:Print2.jpg]]
[[File:Print2.jpg]]




Line 108: Line 110:
|-
|-
| colspan="2" | Controls if the extruder is active or not 
| colspan="2" | Controls if the extruder is active or not 
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
===Initialise===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
|-
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 143: Line 159:




===SetMovementSpeed===
===MoveByXYZReal===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeed'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZReal'''
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | X
|-
| colspan="2" |  
|-
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
|-
| colspan="2" |  
|-
|-
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Speed
| width="90%" | Z
|-
|-
| colspan="2" | Speed control (0 - 100) 
| colspan="2" |  
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
Line 205: Line 231:




===MoveByXYZReal===
===MoveToXYZReal===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveByXYZReal'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZReal'''
|-
|-
| colspan="2" | Moves the print head by the amount specified in the axis variables using linear interpolation. 
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
|-
|-
|-
|-
Line 234: Line 260:




===SetMovementSpeedReal===
===SetMovementSpeed===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeedReal'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeed'''
|-
|-
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
| colspan="2" | Allows the movement speed to be set progmatically. Range 0 - 100 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="10%" align="center" | [[File:Fc9-u8-icon.png]] - BYTE
| width="90%" | Speed
| width="90%" | Speed
|-
|-
Line 253: Line 279:




===MoveToXYZReal===
===SetMovementSpeedReal===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''MoveToXYZReal'''
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetMovementSpeedReal'''
|-
|-
| colspan="2" | Moves the print head to the specific location specified in the axis variables using linear interpolation. 
| colspan="2" | Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
|-
|-
|-
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | X
| width="90%" | Speed
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Y
|-
| colspan="2" |  
|-
| width="10%" align="center" | [[File:Fc9-f32-icon.png]] - FLOAT
| width="90%" | Z
|-
| colspan="2" |  
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="90%" style="border-top: 2px solid #000;" | ''Return''
|}
 
 
===Initialise===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Initialise'''
|-
| colspan="2" | Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
|-
|-
| colspan="2" | Speed control (0 - 100) 
|-
|-
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID
| width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID

Revision as of 11:59, 3 February 2023

Author Matrix Ltd
Version 1.4
Category Scenarios


3D Printer component

A simulation only version of a very basic 3D printer such as a standard RepRap.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_temp/3D_Printer.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_temp/3D_Printer.fcfx

Detailed description

No detailed description exists yet for this component

Examples

3D Print Using Standard 3D Printer CAD file

A simulated 3D print using an external G code file from an actual 3D printer. The G code file must be placed into the same directory as the Flowcode project to work correctly. G-Code_Parser File:Batman.G


3D Maze Generator

A simple 3D maze generator using the 3D printer component to draw the maze. Maze_Builder_3DP




Macro reference

ClearPrevPrint

ClearPrevPrint
Clears all of the content from any previous print cycles. 
- VOID Return


ControlPrintHead

ControlPrintHead
Controls the print extruder which plots the location of the print head as the head moves. If Enable = 0 then the extruder is disabled If Enable != 0 then the extruder is enabled 
- BYTE Enable
Controls if the extruder is active or not 
- VOID Return


Initialise

Initialise
Sets up the 3D printer component by homing, clearing old print data and assigning the movement speed. 
- VOID Return


MoveByXYZ

MoveByXYZ
Moves the print head by the amount specified in the axis variables using linear interpolation. 
- INT X
 
- INT Y
 
- INT Z
 
- VOID Return


MoveByXYZReal

MoveByXYZReal
Moves the print head by the amount specified in the axis variables using linear interpolation. 
- FLOAT X
 
- FLOAT Y
 
- FLOAT Z
 
- VOID Return


MoveToHome

MoveToHome
Returns the print head to the start position (0,0,0) 
- VOID Return


MoveToXYZ

MoveToXYZ
Moves the print head to the specific location specified in the axis variables using linear interpolation. 
- UINT X
 
- UINT Y
 
- UINT Z
 
- VOID Return


MoveToXYZReal

MoveToXYZReal
Moves the print head to the specific location specified in the axis variables using linear interpolation. 
- FLOAT X
 
- FLOAT Y
 
- FLOAT Z
 
- VOID Return


SetMovementSpeed

SetMovementSpeed
Allows the movement speed to be set progmatically. Range 0 - 100 
- BYTE Speed
Speed control (0 - 100) 
- VOID Return


SetMovementSpeedReal

SetMovementSpeedReal
Allows the movement speed to be set progmatically. Range 0.0 - 100.0 
- FLOAT Speed
Speed control (0 - 100) 
- VOID Return



Property reference

Properties
Bed Colour
Specifies the colour of the print bed. 
Print Colour
Specifies the colour of the print output. 
Print Speed (0-100)
Specifies the speed of the printer movements. 100 = as fast as possible. 
Print Type
Specifies how the print is drawn. Object based - uses panel primitives to build up the 3D object, useful for simulated interaction e.g. the formula flowcode and the maze solving example. Point cloud based - uses the point cloud interface to allow complex objects to be built without slowing down the panel interface. 
Print Size
Specifies the size of a single print object. 
Print Shape
Specifies the shape of the print object. 
Max Print Dimensions
X Width
Printer dimensions X axis 
Y Length
Printer dimensions Y axis 
Z Height
Printer dimensions Z axis