Skip to content
Snippets Groups Projects
Commit 6279937c authored by mehtank's avatar mehtank
Browse files

Simplify further by disallowing variable dimensions in ServoMount

parent 26d18070
Branches main
No related merge requests found
......@@ -27,9 +27,6 @@ c.addConstraint(("brain", "length"), "width")
c.addConstraint(("brain", "brain"), "controller")
for servo in ("right", "left"):
c.addConstraint((servo,"width"), *depthfn())
c.addConstraint((servo,"depth"),
"driveservo", "getDim(x,'motorheight')")
c.addConstraint((servo, "length"),
("length", "controller"),
"x[0] - getDim(x[1],'width')")
......
......@@ -7,14 +7,18 @@ c.addParameter("servo", "fs90r", paramType="dimension")
c.addParameter("flip", False, valueType="bool")
c.addParameter("center", True, valueType="bool")
c.addParameter("shift", 0, paramType="length")
# XXX TODO: Define type: tuple of two numbers
c.addParameter("offset", optional=True, overrides=("flip", "center", "shift"))
c.addSubcomponent("beam", "SimpleRectBeam", inherit=True, prefix=None)
c.addSubcomponent("beam", "SimpleRectBeam", inherit=("length", "addTabs"), prefix=None)
c.addSubcomponent("mount", "Cutout")
c.addConstraint(("mount", "dx"), "servo", 'getDim(x, "motorwidth") * 0.99')
c.addConstraint(("mount", "dy"), "servo", 'getDim(x, "motorlength")')
c.addConstraint(("beam", "width"), "servo", 'getDim(x, "motorwidth")')
c.addConstraint(("beam", "depth"), "servo", 'getDim(x, "motorheight")')
c.inheritAllInterfaces("beam", prefix=None)
c.inheritAllInterfaces("mount")
c.addConnection(("beam", "face0"),
......
......@@ -144,9 +144,6 @@ subcomponents:
angle:
parameter: left.angle
center: false
depth:
function: getDim(x,'motorheight')
parameter: driveservo
length:
function: x[0] - getDim(x[1],'width')
parameter: &id001
......@@ -156,11 +153,6 @@ subcomponents:
parameter: height
servo:
parameter: driveservo
width:
function: max(getDim(x[0],'height'), getDim(x[1],'motorwidth'))
parameter:
- controller
- driveservo
right:
classname: Wheel
kwargs:
......@@ -169,9 +161,6 @@ subcomponents:
angle:
parameter: right.angle
center: false
depth:
function: getDim(x,'motorheight')
parameter: driveservo
flip: true
length:
function: x[0] - getDim(x[1],'width')
......@@ -180,11 +169,6 @@ subcomponents:
parameter: height
servo:
parameter: driveservo
width:
function: max(getDim(x[0],'height'), getDim(x[1],'motorwidth'))
parameter:
- controller
- driveservo
sheath:
classname: SimpleRectBeam
kwargs: {}
......
......@@ -115,12 +115,6 @@ parameters:
defaultValue: true
spec:
valueType: bool
depth:
defaultValue: 50
spec:
minValue: 0
units: mm
valueType: (float, int)
flip:
defaultValue: false
spec:
......@@ -149,38 +143,16 @@ parameters:
minValue: 0
units: mm
valueType: (float, int)
width:
defaultValue: 20
spec:
minValue: 0
units: mm
valueType: (float, int)
source: ../builders/MountedServoBuilder.py
subcomponents:
mount:
classname: ServoMount
kwargs: {}
parameters:
_dx:
parameter: _dx
_dy:
parameter: _dy
_dz:
parameter: _dz
_q_a:
parameter: _q_a
_q_i:
parameter: _q_i
_q_j:
parameter: _q_j
_q_k:
parameter: _q_k
addTabs:
parameter: addTabs
center:
parameter: center
depth:
parameter: depth
flip:
parameter: flip
length:
......@@ -191,8 +163,6 @@ subcomponents:
parameter: servo
shift:
parameter: shift
width:
parameter: width
servo:
classname: ServoMotor
kwargs: {}
......
......@@ -54,48 +54,6 @@ interfaces:
interface: topedge3
subcomponent: beam
parameters:
_dx:
defaultValue: 0
spec:
minValue: null
units: mm
valueType: (float, int)
_dy:
defaultValue: 0
spec:
minValue: null
units: mm
valueType: (float, int)
_dz:
defaultValue: 0
spec:
minValue: null
units: mm
valueType: (float, int)
_q_a:
defaultValue: 1
spec:
maxValue: 1
minValue: -1
valueType: (int, float)
_q_i:
defaultValue: 0
spec:
maxValue: 1
minValue: -1
valueType: (int, float)
_q_j:
defaultValue: 0
spec:
maxValue: 1
minValue: -1
valueType: (int, float)
_q_k:
defaultValue: 0
spec:
maxValue: 1
minValue: -1
valueType: (int, float)
addTabs:
defaultValue: true
spec:
......@@ -104,12 +62,6 @@ parameters:
defaultValue: true
spec:
valueType: bool
depth:
defaultValue: 50
spec:
minValue: 0
units: mm
valueType: (float, int)
flip:
defaultValue: false
spec:
......@@ -138,40 +90,22 @@ parameters:
minValue: 0
units: mm
valueType: (float, int)
width:
defaultValue: 20
spec:
minValue: 0
units: mm
valueType: (float, int)
source: ../builders/ServoMountBuilder.py
subcomponents:
beam:
classname: SimpleRectBeam
kwargs: {}
parameters:
_dx:
parameter: _dx
_dy:
parameter: _dy
_dz:
parameter: _dz
_q_a:
parameter: _q_a
_q_i:
parameter: _q_i
_q_j:
parameter: _q_j
_q_k:
parameter: _q_k
addTabs:
parameter: addTabs
depth:
parameter: depth
function: getDim(x, "motorheight")
parameter: servo
length:
parameter: length
width:
parameter: width
function: getDim(x, "motorwidth")
parameter: servo
mount:
classname: Cutout
kwargs: {}
......
......@@ -115,12 +115,6 @@ parameters:
defaultValue: true
spec:
valueType: bool
depth:
defaultValue: 50
spec:
minValue: 0
units: mm
valueType: (float, int)
flip:
defaultValue: false
spec:
......@@ -155,12 +149,6 @@ parameters:
minValue: 0
units: mm
valueType: (float, int)
width:
defaultValue: 20
spec:
minValue: 0
units: mm
valueType: (float, int)
source: ../builders/WheelBuilder.py
subcomponents:
drive:
......@@ -187,8 +175,6 @@ subcomponents:
parameter: angle
center:
parameter: center
depth:
parameter: depth
flip:
parameter: flip
length:
......@@ -199,8 +185,6 @@ subcomponents:
parameter: servo
shift:
parameter: shift
width:
parameter: width
tire:
classname: RegularNGon
kwargs: {}
......
......@@ -110,7 +110,7 @@ dims["tgy1370a"] = { "type" : "servo",
dims["fs90r"] = { "type" : "servo",
"motorlength" : 23,
"motorwidth" : 12.2,
"motorwidth" : 13,
"motorheight" : 19,
"shoulderlength": 5,
"hornlength" : 10,
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment