Printer for printing a 3D object
AssigneeCreate It Real A/S
InventorsJeremie Pierre Gay, Zoltan Tamas Vajda
Life of this patent
Estimating the term…
Abstract
A printer for printing a 3D object based on a computer model, the printer comprising a tool for extruding or solidifying material, a stage supporting layers of the object; motion structure defining the shape of the layers, and a controller configured to make a path to be followed for making the object. To increase at least one of the speed and the precision by which the object is made, the controller is configured to define the path by defining a plurality of line segments and by defining transition segment for insertion between the line segments. The controller is further configured to only demand material deposition along the line segments and not along the transition segments.
Claims15
A printer for printing a 3D object based on a computer model, the printer comprising:
- a tool configured to shift between an activated and a deactivated state based on a tool command, the tool being configured to add material to an adding-position in a layer of the 3D object in the activated state, where the adding-position is determined by a tool-position of a shape defining structure;
- a stage arranged to support the layer of the 3D object;
- a motion structure configured to receive motion commands and based thereon to define the shape of the layer by movement of the shape defining structure;
- and
- a controller configured to communicate with the tool and with the motion structure and being programmed to receive shape data defining the shape of a layer of the 3D object, to provide a path based on the shape data, to provide motion commands for the motion structure such that the adding-position follows the path, and to provide tool commands based on the path;
- wherein the controller is configured to define the path by:
- defining, based on the shape data, a plurality of line segments;
- defining start points and end points for each line segment;
- defining an order of the line segments to thereby define a list of contiguous line segments;
- defining a transition segment between at least one pair of two adjacent line segments in the list of contiguous line segments, each transition segment being defined based on a desired minimum speed and maximum acceleration at the subsequent line segment, such that the path is defined by the contiguous line segments including at least one pair of line segments which are separated by a transition segment, and
- wherein the controller is programmed to provide the tool commands such that the tool is activated when the adding-position is within a line segment and deactivated when the adding-position is outside the line segment;
- wherein the controller is configured to define the transition segment by defining at least an acceleration zone of the transition segment and a subsequent dissipation zone of the transition segment;
- wherein the controller is configured to define the acceleration zone as a zone, where the motion structure accelerates or decelerates the shape defining structure and to define the dissipation zone as a zone where the motion structure provides constant speed to the shape defining structure and where the acceleration or deceleration in the preceding acceleration zone is simulated to cause vibration of the shape defining structure;
- wherein the controller is configured to define the transition segments by:
- selecting between defining a straight transition segment or a curved transition segment based on a position of a preceding line segment and a subsequent line segment;
- if a straight transition segment is selected, applying a length to the straight transition segment, the length being applied by the equation:
- L
- =
- (
- v_s
- )
- 2
- 2
-
- a
- +
- d_a
- where L is the applied length of the straight transition segment, v is a safe zone speed which is defined in the controller, a is an acceleration which is defined in the controller, and da is the length of the dissipation zone required after accelerating in the acceleration zone, and
- if a curved transition segment is selected, applying a radius of curvature to the curved transition segment, the radius of curvature being applied by the equation:
- R_min
- =
- (
- v_s
- )
- 2
- a_s
- where R_min is a pre-specified curvature radius, v_s is a safe zone speed defined in the controller, and a_s is a pre-specified safe zone acceleration defined in the controller.
A method for printing a 3D object based on a computer model by use of a printer comprising:
- a tool configured to shift between an activated and a deactivated state based on a tool command, the tool being configured to add material to an adding-position in a layer of the 3D object in the activated state, where the adding-position is determined by a tool-position of a shape defining structure;
- a stage arranged to support the layer of the 3D object;
- a motion structure configured to receive motion commands and based thereon to define the shape of the layer by movement of the shape defining structure;
- and
- a controller configured to communicate with the tool and with the motion structure and being programmed to receive shape data defining the shape of a layer of the 3D object, to provide a path based on the shape data, to provide motion commands for the motion structure such that the shape defining structure follows the path, and to provide tool commands based on the path,
- the method comprising the steps of:
- defining, based on the shape data, a plurality of line segments;
- defining start points and end points for each line segment;
- defining an order of the line segments to thereby define a list of contiguous line segments;
- and
- defining a transition segment between at least one pair of two adjacent line segments in the list of contiguous line segments, each transition segment being defined based on a desired minimum speed and maximum acceleration at the subsequent line segment, such that the path is defined by the contiguous line segments including at least one pair of line segments which are separated by a transition segment;
- the method further comprising the step of providing motion commands for the motion structure such that the shape defining structure follows the path and providing tool commands by which the tool is activated when the adding-position is within a line segment and deactivated when the adding-position is outside the line segment;
- wherein the controller is configured to define the transition segment by defining at least an acceleration zone of the transition segment and a subsequent dissipation zone of the transition segment;
- wherein the controller is configured to define the acceleration zone as a zone, where the motion structure accelerates or decelerates the shape defining structure and to define the dissipation zone as a zone where the motion structure provides constant speed to the shape defining structure and where the acceleration or deceleration in the preceding acceleration zone is simulated to cause vibration of the shape defining structure;
- wherein the controller is configured to define the transition segments by:
- selecting between defining a straight transition segment or a curved transition segment based on a position of a preceding line segment and a subsequent line segment;
- if a straight transition segment is selected, applying a length to the straight transition segment, the length being applied by the equation:
- L
- =
- (
- v_s
- )
- 2
- 2
-
- a
- +
- d_a
- where L is the applied length of the straight transition segment, v is a safe zone speed which is defined in the controller, a is an acceleration which is defined in the controller, and da is the length of the dissipation zone required after accelerating in the acceleration zone, and
- if a curved transition segment is selected, applying a radius of curvature to the curved transition segment, the radius of curvature being applied by the equation:
- R_min
- =
- (
- v_s
- )
- 2
- a_s
- where R_min is a pre-specified curvature radius, v_s is a safe zone speed defined in the controller, and a_s is a pre-specified safe zone acceleration defined in the controller.
Dependencies are inferred from the claim text.