2021年11月2日火曜日

OpenSCADとUltimaker Curaを使用して、蝶番を作る

OpenSCADとUltimaker Curaを使用して、蝶番を作るには以下の手順を実行します。

〇作成した蝶番

作成手順

1. OpenSCADで以下のコードを実行して形状を調整し、STLファイルにエクスポートします。
蝶番のサイズなど3Dプリンタや設定によって微調整してください。

・ソースコード
// 部品1
HINGE1_W=20;
HINGE_D=6;
HINGE_H=20;
HINGE1_HOLE_R=2.5;
HINGE1_DENT_H=15;
HINGE1_DENT_W=7;

// 部品2
HINGE2_SHAFT_R=2;
HINGE2_BUMP_H=13;
HINGE2_BUMP_W=7;
HINGE2_W=15;

module hinge1(){
    difference(){
        union(){
            translate([-HINGE1_W, 0, 0])
            linear_extrude(height=HINGE_H){
                    square([HINGE1_W-HINGE_D/2, HINGE_D]);
            }
            translate([-HINGE_D/2, HINGE_D/2, 0])
            linear_extrude(height=HINGE_H){
                circle(HINGE_D/2, $fn=50);
            }
        }
        union(){
            translate([-HINGE_D/2, HINGE_D/2, 0])
            linear_extrude(height=HINGE_H){
                circle(HINGE1_HOLE_R, $fn=50);
            }
            translate([-HINGE1_DENT_W, 0, (HINGE_H-HINGE1_DENT_H)/2])
            linear_extrude(height=HINGE1_DENT_H){
                    square([HINGE1_DENT_W, HINGE_D]);
            }
        }
    }
}

module hinge2(){
    translate([-HINGE_D/2, HINGE_D/2, 0])
    linear_extrude(height=HINGE_H){
        circle(HINGE2_SHAFT_R, $fn=50);
    }
    translate([-HINGE_D/2, 0, (HINGE_H-HINGE2_BUMP_H)/2])
    linear_extrude(height=HINGE2_BUMP_H){
        square([HINGE2_BUMP_W-HINGE_D/2, HINGE_D]);
    }
    translate([-HINGE_D/2, HINGE_D/2, (HINGE_H-HINGE2_BUMP_H)/2])
    linear_extrude(height=HINGE2_BUMP_H){
        circle(HINGE_D/2, $fn=50);
    }

    translate([HINGE2_BUMP_W-HINGE_D, 0, 0])
    linear_extrude(height=HINGE_H){
        square([HINGE2_W, HINGE_D]);
    }
}

hinge1();
hinge2();

・OpenSCADの画面

2. Ultimaker CuraでSTLファイルを読み込み、スライスしてgcodeを保存します。

3. 3Dプリンターで印刷します

関連情報

OpenSCADまとめ

Debian 11(Bullseye)にDocker/Docker Compose V2系をインストールする

Debian 11(Bullseye)にDocker/Docker Compose V2系をインストールするには、以下の手順を実行します。

インストール手順

以下の手順でDocker/Docker Compose v2をインストールできます

1.Dockerのインストール
Dockerをインストールしていない場合、以下のコマンドでDockerをインストールします。
sudo apt-get -y remove docker docker.io containerd runc

sudo apt-get -y install apt-transport-https ca-certificates curl gnupg lsb-release

curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

sudo apt-get update

sudo apt-get -y install docker-ce docker-ce-cli containerd.io

sudo adduser $USER docker
※いったんログアウトします。以下でバージョンを確認します。
docker version

2.Docker Composeのインストール
docker-composeをインストールしていない場合、以下のコマンドでdocker-composeをインストールします。

cd /usr/libexec/docker/cli-plugins/

sudo wget https://github.com/docker/compose/releases/download/v2.0.1/docker-compose-linux-x86_64

sudo chmod +x  docker-compose-linux-x86_64

sudo mv docker-compose-linux-x86_64 docker-compose

以下のコマンドでDocker Composeのバージョンを確認します
docker compose version

Debian 11(Bullseye)にグラフィカルなdiffツールMeldをインストールする

Meldは開発者向けのファイル比較ツールです。diffと比べてグラフィカルな表現で差異を分かりやすく表示します。

〇Meldの画面

インストール方法

以下のコマンドを実行します。
sudo apt-get update

sudo apt-get -y install meld

Apache Supersetでデータセットを集計して棒グラフで表示する

Apache Supersetでデータセットの集計して棒グラフで表示するには、以下の手順を実行します。

操作手順

1.データセット一覧ページで使用したいデータセットの名前リンク(下図赤枠部分)をクリックします。

2.可視化方式の変更
可視化方式には、デフォルトで「テーブル」が選択されているので、「テーブル」をクリックします(下図赤枠部分)。

3.棒グラフの選択
「可視化方式を選んでください」とダイアログが表示されるので、検索フィールドに「bar」と入力し、結果として表示された「Bar Chart」(下図赤枠部分)をクリックします。その後「SELECT」ボタンをクリックします。

4.指標フィールドの「+」アイコンをクリックして、COLUMNに集計したい値(この場合は売上を表すsales_amt)、AGGREGATEフィールドに集

5.次にSERIES項目で、棒グラフを別系列として表示したい項目を選択します(この場合はストア名)。

6.クエリ実行ボタンをクリックします。確認して「保存」ボタンをクリックして棒グラフチャートを保存します。

関連情報

・Apache Supersetのインストール方法、ダッシュボードやチャートの作成方法は以下のページを参照してください。
Apache Supersetのまとめ

PySimpleGUIでスライダー要素を水平方向にする

スライダー要素は、ツマミをドラッグして範囲内の値を変更することができます。スライダー要素を水平方向にするには、orientationパラメータでhorizontalを指定します。

サンプル実行手順

以下のファイルを保存して、実行します。
h_slider.py
import PySimpleGUI as sg

sg.theme('SystemDefault')
layout = [[sg.Slider(range=(0,100), orientation='horizontal')]]

window = sg.Window('スライダー: 水平', layout, size=(200,200))
# イベントループ
while True:
    event, values = window.read()
    if event == sg.WIN_CLOSED:
        break

window.close()

・実行コマンド
python h_slider.py

〇実行結果

関連情報

PySimpleGUIでスライダー要素のデフォルト値を指定する

PySimpleGUIでスライダー要素の分解能を指定する

PySimpleGUIでスライダー要素の境界の幅を指定する

PySimpleGUIでスライダー要素のレリーフスタイルを指定する

PySimpleGUIでスライダー要素の値を非表示にして、別のテキスト要素に表示する

PySimpleGUIでスライダー要素の背景色・文字色・スライダー溝部分の色を設定する

PySimpleGUIでスライダー要素にツールチップを設定する

PySimpleGUIでスライダー要素のフォントを設定する

・PySimpleGUIに関する他の記事はこちらを参照してください。

2021年11月1日月曜日

Apache SupersetでAGGREGATEタイプのチャートの指標に日本語などの論理名称を設定する

Apache SupersetでAGGREGATEタイプのチャートの指標に日本語などの論理名称を設定するには、以下の手順を実行します。

操作手順

1.「チャート」メニューをクリックして、変更したいチャートの名称(下図赤枠部分)をクリックします。

2.次にそれぞれの指標の右にある「>」をクリックして、ヘッダ部分の鉛筆アイコンをクリックします(下図赤枠部分)。

3.論理名称(日本語など)を入力して「保存」ボタンをクリックします。

4.指標の名称が論理名称になったことを確認して、「保存」ボタンをクリックして上書き保存します。

関連情報

・Apache Supersetのインストール方法、ダッシュボードやチャートの作成方法は以下のページを参照してください。
Apache Supersetのまとめ

PySimpleGUIでスライダー要素のデフォルト値を指定する

スライダー要素は、ツマミをドラッグして範囲内の値を変更することができます。値の範囲はrangeパラメータにタプルで最小値・最大値を指定します。スライダー要素のデフォルト値を指定するには、default_valueパラメータを指定します。

サンプル実行手順

以下のファイルを保存して、実行します。
slider.py
import PySimpleGUI as sg

sg.theme('SystemDefault')
layout = [[sg.Slider(range=(0,100), default_value=50)]]

window = sg.Window('スライダーサンプル', layout, size=(200,200))
# イベントループ
while True:
    event, values = window.read()
    if event == sg.WIN_CLOSED:
        break

window.close()

・実行コマンド
python slider.py

〇実行結果

関連情報

PySimpleGUIでスライダー要素を水平方向にする

PySimpleGUIでスライダー要素の分解能を指定する

PySimpleGUIでスライダー要素の境界の幅を指定する

PySimpleGUIでスライダー要素のレリーフスタイルを指定する

PySimpleGUIでスライダー要素の値を非表示にして、別のテキスト要素に表示する

PySimpleGUIでスライダー要素の背景色・文字色・スライダー溝部分の色を設定する

PySimpleGUIでスライダー要素にツールチップを設定する

PySimpleGUIでスライダー要素のフォントを設定する

・PySimpleGUIに関する他の記事はこちらを参照してください。