カメラ固定プレートは、外径寸法が38x38mmで固定用穴寸法が34x34mmのカメラをネジで固定し、Raspberry Piに固定されるようにOpenSCADで設計します。
[手順]
Step1.
まず外径は、角を丸くするためにminkowskiを使います。minkowskiは最初に定義した形状の外径を2番目に定義した形状でトレースします。2番目にcircleを指定することで角が丸くすることができます。
minkowski_squareという角が四角いモジュールを用意しました。これを用いて、Raspberry Piの固定穴に合う65x56mmの四角形を作ります。
module minkowski_square(dimension, r=2)
{
minkowski()
{
square([dimension.x-r*2,dimension.y-r*2], center=true);
circle(r=r);
}
}
//outline of raspi dimention
translate([65/2, 56/2])
minkowski_square(dimension=[65,56], r=2, $fn=100);

Step2.
次に、カメラ取り付け用の穴を開けます。camera_mount_hole_2Dというモジュールでカメラに実装されている部品に干渉しないように穴を調整します。
その穴を、differenceでStep1の形状から差分を取って開けます。
module camera_mount_hole_2D(size1,size2)
{
minkowski_square(dimension=size1, r=1, $fn=100);
minkowski_square(dimension=size2, r=1, $fn=100);
}
difference(){
//outline of raspi dimention
translate([65/2, 56/2])
minkowski_square(dimension=[65,56], r=2, $fn=100);
//camera : outline 38x38, hole 34x34
camera_bolt_r = 2.7/2;
translate([0, 3, 0]){
translate([65/2, 56/2])
camera_mount_hole_2D(size1=[24,38], size2=[38,24]);
translate([65/2,56/2])
for(i=[0:1]){
mirror([i,0])
for(j=[0:1]){
mirror([0,j])
translate([34/2, 34/2])
circle(camera_bolt_r);
}
}
}
}

Step3.
次に、Raspberry Piの取り付け穴を開けます。
Raspberry Piの形状の設計値は、次の図の通りで、穴の位置は端から3.5mmの場所にありますので、4隅に穴を開けます。

difference(){
//outline of raspi dimention
translate([65/2, 56/2])
minkowski_square(dimension=[65,56], r=2, $fn=100);
//camera : outline 38x38, hole 34x34
camera_bolt_r = 2.7/2;
translate([0, 3, 0]){
translate([65/2, 56/2])
camera_mount_hole_2D(size1=[24,38], size2=[38,24]);
translate([65/2,56/2])
for(i=[0:1]){
mirror([i,0])
for(j=[0:1]){
mirror([0,j])
translate([34/2, 34/2])
circle(camera_bolt_r);
}
}
}
//raspi attachemnt holes
raspi_bolt_r = 2.7/2;
translate([3.5, 3.5])
circle(r=raspi_bolt_r);
translate([61.5, 3.5])
circle(r=raspi_bolt_r);
translate([3.5, 52.5])
circle(r=raspi_bolt_r);
translate([61.5, 52.5])
circle(r=raspi_bolt_r);
}

Step4.
最後に、Raspberry Piのピンヘッダが隠れないように、四角で切り込みを入れます。
difference(){
//outline of raspi dimention
translate([65/2, 56/2])
minkowski_square(dimension=[65,56], r=2, $fn=100);
//camera : outline 38x38, hole 34x34
camera_bolt_r = 2.7/2;
translate([0, 3, 0]){
translate([65/2, 56/2])
camera_mount_hole_2D(size1=[24,38], size2=[38,24]);
translate([65/2,56/2])
for(i=[0:1]){
mirror([i,0])
for(j=[0:1]){
mirror([0,j])
translate([34/2, 34/2])
circle(camera_bolt_r);
}
}
}
//raspi attachemnt holes
raspi_bolt_r = 2.7/2;
translate([3.5, 3.5])
circle(r=raspi_bolt_r);
translate([61.5, 3.5])
circle(r=raspi_bolt_r);
translate([3.5, 52.5])
circle(r=raspi_bolt_r);
translate([61.5, 52.5])
circle(r=raspi_bolt_r);
//pin header
translate([65/2, 0])
minkowski_square(dimension=[52,13], r=1, $fn=100);
}

[設計データ]
・camera_holder_34x34.scad
・camera_holder_34x34.svg
・camera_holder_34x34.stl
[キット購入]
カメラ固定プレートと固定用ネジ・スペーサーのセットはこちらから購入できます。
Picam360 STORE
https://store.picam360.com/