diff --git a/bluerobotics_parts/commissions/commission-blueboat.yaml b/bluerobotics_parts/commissions/commission-blueboat.yaml new file mode 100644 index 0000000..ce4380e --- /dev/null +++ b/bluerobotics_parts/commissions/commission-blueboat.yaml @@ -0,0 +1,78 @@ +# Commission template from gltf-robotics +# One commission covers one vehicle or one batch of parts. The integrator fills +# This covers the blueboat_chassis and its two propellers as a prototype of the new gltf workflow + +commission: blueboat + +# --- Stated once, applied to every part unless a part block says otherwise --- + +creator: Honu Robotics +rights: "Copyright 2026 Honu Robotics. Licensed under the Apache License, Version 2.0." + +# Where the authoring files (.blend, CAD) are archived. Leave out if they are not. +authoringSource: ".blend files should be archived in google drive " + +# For the modeler to read. Not written to any file. +sources: + - "see docs/vehicles/blueboat/configuration.md" +toolchain: + blender: "5.2.2 LTS" + exporter: "io_scene_gltf2 5.2.40" + +# --- One block per part, keyed by the part name (lowercase snake_case) --- + +parts: + + blueboat_chassis: + # Written to the file's manifest. + partRole: base # exactly one base part per vehicle + datumPoint: "Intersection of three planes on the geometry mid-point as explained and illustrated in docs/vehicles/blueboat/configuration.md" + datumTarget: "None - in free space" # optional + source: "Images and 3D files from https://bluerobotics.com/store/boat/blueboat/blueboat/" + dimensionSource: "https://bluerobotics.com/store/boat/blueboat/blueboat/" + nominalDimension: "length overall 1.20 m" + dimensionTolerance: 0.10 + + # For the modeler to read. Not written to the file. + referenceImages: + - "see docs/vehicles/blueboat/configuration.md and the images therein" + forwardFeature: "the bow; +X points from the transom to the bow" + visualRequirement: "Start simple" + materials: "hull: plastic, frame: annodized aluminum" + openings: "none" + priorities: "1. overall shape and proportions. 2. color. 3. materials" + notes: "" + + m200_weedless_prop_cw: + partRole: component + datumPoint: "center of the hub's mating face, on the spin axis" + source: "vendor 3D model WEEDLESS_PROPELLER_BR-101303, https://cad.bluerobotics.com/WEEDLESS_PROPELLER_BR-101303.zip" + dimensionSource: "https://bluerobotics.com/store/thrusters/t100-t200-thrusters/weedless-propeller-set/" + nominalDimension: "diameter 112 mm" + dimensionTolerance: 0.02 # meters + + referenceImages: + - "product images at the source page; the CW and CCW props are mirror images" + forwardFeature: "the direction of thrust in forward operation, along the spin axis" + visualRequirement: "viewed from 1 m and beyond; blade count, sweep and handedness must be recognizable" + materials: "propeller: non-metal, polycarbonate 30% glass-filled" + openings: "hub bore" + priorities: "1. blade shape and handedness. 2. hub. 3. color" + notes: "clockwise; fills the chassis slot motor_stbd. Same datum and geometry as m200_weedless_prop_ccw, mirrored." + + m200_weedless_prop_ccw: + partRole: component + datumPoint: "center of the hub's mating face, on the spin axis" + source: "vendor 3D model WEEDLESS_PROPELLER_BR-101303, https://cad.bluerobotics.com/WEEDLESS_PROPELLER_BR-101303.zip" + dimensionSource: "https://bluerobotics.com/store/thrusters/t100-t200-thrusters/weedless-propeller-set/" + nominalDimension: "diameter 112 mm" + dimensionTolerance: 0.02 # meters + + referenceImages: + - "product images at the source page; the CW and CCW props are mirror images" + forwardFeature: "the direction of thrust in forward operation, along the spin axis" + visualRequirement: "viewed from 1 m and beyond; blade count, sweep and handedness must be recognizable" + materials: "propeller: non-metal, polycarbonate 30% glass-filled" + openings: "hub bore" + priorities: "1. blade shape and handedness. 2. hub. 3. color" + notes: "counter-clockwise; fills the chassis slot motor_port. Same datum and geometry as m200_weedless_prop_cw, mirrored." diff --git a/docs/vehicles/blueboat/images/usv_side_xy.png b/docs/vehicles/blueboat/images/usv_side_xy.png new file mode 100644 index 0000000..6042fd7 Binary files /dev/null and b/docs/vehicles/blueboat/images/usv_side_xy.png differ diff --git a/docs/vehicles/blueboat/images/usv_side_yz.png b/docs/vehicles/blueboat/images/usv_side_yz.png new file mode 100644 index 0000000..974d32d Binary files /dev/null and b/docs/vehicles/blueboat/images/usv_side_yz.png differ diff --git a/docs/vehicles/blueboat/images/usv_top_xz.png b/docs/vehicles/blueboat/images/usv_top_xz.png new file mode 100644 index 0000000..35dbaca Binary files /dev/null and b/docs/vehicles/blueboat/images/usv_top_xz.png differ diff --git a/docs/vehicles/blueboat/index.md b/docs/vehicles/blueboat/index.md index 65c0624..c680003 100644 --- a/docs/vehicles/blueboat/index.md +++ b/docs/vehicles/blueboat/index.md @@ -14,6 +14,7 @@ configuration parameters verify-sitl-boat tune-sitl-boat +visual_asset_commission ``` ## The default vehicle diff --git a/docs/vehicles/blueboat/visual_asset_commission.md b/docs/vehicles/blueboat/visual_asset_commission.md new file mode 100644 index 0000000..97dd59a --- /dev/null +++ b/docs/vehicles/blueboat/visual_asset_commission.md @@ -0,0 +1,22 @@ +# Commissioning materials for visual assets + +This document has details, beyond the commission YAML file, to describe the visual 3D asset as described gltf-robotics. + +## blueboat_chassis + +### datum location + +The location of the datum is defined relative to the geometry. The origin coordinate system of the USV is defined by the geometric extents of the hull as the intersection of three planes. + +The XY plane is defined as equidistant from the XY plan tangent to the lowest extent of the hull (keel) and the XY plane tangent to the top of the plastic hull deck. +![xy](./images/usv_side_xy.png) + + +The YZ plane is defined as equidistant from the fore (bow) and aft (stern) extent of the hull . +![yz](./images/usv_side_yz.png) + +The XZ plane is defined as equidistnat from the left (port) and right (stbd) extent of the two hulls when assebled as the chassis +![xz](./images/usv_top_xz.png) + +The datum orign location is defined as the intersection of these three planes and is, loosely speaking, in the geometric center of the chassis, but, unlike the center of mass/gravity, this definition of the location does not change with modifying the details or materials of the asset. +