2021年10月3日日曜日

OpenSCADとUltimaker Curaを使用して、秋月電子さんのユニバーサル基板Dタイプが収まるフレームを作る

OpenSCADとUltimaker Curaを使用して、秋月電子さんのユニバーサル基板Dタイプが収まるフレームを作るには以下の手順を実行します。
対象のユニバーサル基板は、以下の秋月電子さんで販売しているユニバーサル基板です。
・片面ユニバーサル基板 Dタイプ(47×36mm) ガラスコンポジット
https://akizukidenshi.com/catalog/g/gP-08241/
※基板の端やネジ穴付近は固定のため、フレームと干渉するので部品などをはんだ付けするのを避けてください。

〇素のフレームとユニバーサル基板をはめた状態のフレームの写真

作成手順

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

・フレームのソースコード
// Dタイプ 基板のサイズ
MARGIN=0.2;
BOARD_DT_W=36+MARGIN;
BOARD_DT_D=47+MARGIN;
BOARD_DT_H=1.6;

// プレートの底の厚さ
BOTTOM_H=1.4;
// 外寸
WALL_SIZE=2;
BOARD_DT_OW=BOARD_DT_W+WALL_SIZE*2;
BOARD_DT_OD=BOARD_DT_D+WALL_SIZE*2;

// 内側
FRAME_SIZE=2;
PADDING_H=2.5;
BOARD_DT_IW=BOARD_DT_W-FRAME_SIZE*2;
BOARD_DT_ID=BOARD_DT_D-PADDING_H*2;

// 基板固定穴直径
HOLE_SIZE=3.2;
HOLE_PADDING=1.5;
HOLE_PLATE=HOLE_SIZE+HOLE_PADDING*2;

difference(){
    union(){
        difference(){
            translate([-BOARD_DT_OW/2, -BOARD_DT_OD/2, 0])
            linear_extrude(height=BOARD_DT_H+BOTTOM_H){
                    square([BOARD_DT_OW, BOARD_DT_OD]);
            }
            union(){
                translate([-BOARD_DT_IW/2, -BOARD_DT_ID/2, 0])
                linear_extrude(height=BOARD_DT_H){
                        square([BOARD_DT_IW, BOARD_DT_ID]);
                }
                translate([-BOARD_DT_W/2, -BOARD_DT_D/2, BOTTOM_H])
                linear_extrude(height=BOARD_DT_H){
                        square([BOARD_DT_W, BOARD_DT_D]);
                }
            }
        }
        translate([-HOLE_PLATE/2, BOARD_DT_ID/2-HOLE_PLATE/2, 0])
        linear_extrude(height=BOTTOM_H){
            square([HOLE_PLATE, HOLE_PLATE]);
        }    
        translate([-HOLE_PLATE/2, -BOARD_DT_ID/2-HOLE_PLATE/2, 0])
        linear_extrude(height=BOTTOM_H){
            square([HOLE_PLATE, HOLE_PLATE]);
        }    
    }
    union(){
        translate([0, BOARD_DT_ID/2, 0])
        linear_extrude(height=BOTTOM_H){
            circle(HOLE_SIZE/2, $fn=50);
        }    
        translate([0, -BOARD_DT_ID/2, 0])
        linear_extrude(height=BOTTOM_H){
            circle(HOLE_SIZE/2, $fn=50);
        }    
    }
}

・OpenSCADの画面

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

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

関連情報

OpenSCADまとめ

Debian 11(Bullseye)に動画編集アプリShotcutのsnap版をインストールする

Shotcutは動画編集アプリケーションです。動画に様々なフィルタなどをかけることが出来ます。

〇Shotcutの画面

インストール方法

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

sudo apt-get -y install snapd

sudo snap install core

sudo snap install shotcut --classic
※Gnomeのアプリケーションメニューに出てこない場合は再起動かsnap run shotcutコマンドで起動できます。

関連情報

・操作方法や様々な効果の使用方法は以下を参照してください。
動画編集アプリShotcutのまとめ

・様々な動画に関するアプリケーションについては、以下のまとめを参照してください。
動画関連アプリケーションのまとめ

2021年10月2日土曜日

Debian 11(Bullseye)にTalend Open Studio for Data Integrationをインストールする

TalendはオープンソースのJava製のETLアプリケーションです。

〇Talend Open Studio for Data Integrationの画面

インストール方法

以下のコマンドを実行します。
sudo apt-get install -y openjdk-11-jdk

cd /opt

sudo wget 'https://sourceforge.net/projects/talend-studio/files/Talend%20Open%20Studio/7.3.1/TOS_DI-20200219_1130-V7.3.1.zip'

sudo unzip TOS_DI-20200219_1130-V7.3.1.zip

sudo mv TOS_DI-20200219_1130-V7.3.1 /opt/tosdi

cat << EOF | sudo tee /usr/share/applications/tosdi.desktop
[Desktop Entry]
Version=1.0
Type=Application
Terminal=false
Exec=/opt/tosdi/TOS_DI-linux-gtk-x86_64
Name=Talend Open Studio for Data Integration
Categories=Utility;Development;
EOF

関連情報

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

2021年10月1日金曜日

秋月電子さんの5V出力昇圧DCDCコンバーターを使用して、18650リチウムイオン電池からUSBタイプAに出力する電源を作成する

秋月電子さんの5V出力昇圧DCDCコンバーターを使用して、18650リチウムイオン電池からUSBタイプAに出力する電源を作成するには、以下の手順を実行します。
スライドスイッチもつけてON/OFFできるようにします。

〇作成した電源とテスト用に接続したDAISOさんのUSB電球の写真

作成手順

1. 以下の部品を用意します。
・5V出力昇圧DCDCコンバーター
https://akizukidenshi.com/catalog/g/gK-13065/
※5V 0.21Aが出力できます。

・片面ユニバーサル基板 Dタイプ(47×36mm) ガラスコンポジット
https://akizukidenshi.com/catalog/g/gP-08241/

・USBコネクタDIP化キット (Aメス)
https://akizukidenshi.com/catalog/g/gK-07429/

・スライドスイッチ ISH-1260-HA-G
https://akizukidenshi.com/catalog/g/gP-15370/

・ICソケット ( 6P)
https://akizukidenshi.com/catalog/g/gP-08616/
※基板に直接DCDCコンバーターをハンダ付けするなら不要です。

・電池ボックス BH-186501-A
https://akizukidenshi.com/catalog/g/gP-08407/

・18650電池には、以下の物を使用しました。
KEEPPOWER 3500mAh P1835J

〇各部品の写真
※USBコネクタDIP化キットや、5V出力昇圧DCDCコンバーターをハンダ付け済みの状態です

2. 回路の接続
以下の回路図に基づいて、各部品をDタイプユニバーサル基板上にハンダ付けして配線します。

〇完成後の写真

ffmpeg-ptyhonでnormalizeフィルタを使用して動画をノーマライズ(正規化)する

ffmpeg-ptyhonでnormalizeフィルタを使用して動画をノーマライズ(正規化)するには、以下のサンプルプログラムのようにfilterメソッドにフィルタ名"normalize"と以下のパラメータを指定します。
blackpt: 最小入力値に対応する色
whitept: 最大入力値に対応する色
smoothing: スムージングのために使用される前のフレーム数。デフォルト0。
independence: 色の独立性。デフォルト1(完全に独立)
strength: フィルターの強さ。デフォルト1(最大)。

サンプルプログラム

ffmepg-pythonがインストールされた仮想環境の作成方法は「FFmpegをPythonから操作できるffmpeg-pythonをインストールした仮想環境を作成し、動画形式変換する」を参考にしてください。

ffmpeg_normalize.py
import ffmpeg

input = ffmpeg.input('./lake.mp4')
processed = input.video.filter("normalize",blackpt='black',whitept='white',smoothing=0,independence=0,strength=1.0)
ffmpeg.output(processed, input.audio, './lake_normalize.mp4').run()

・実行方法
以下のコマンドを実行して、サンプルプログラムを実行します。
python ffmpeg_normalize.py

〇変換前動画

〇変換後動画

whiteptパラメータを変えた例

whiteptにyellowを指定すると、黄色のセロファンから透かして見たような動画になります。

ffmpeg_normalize_yellow.py
import ffmpeg

input = ffmpeg.input('./lake.mp4')
processed = input.video.filter("normalize",blackpt='black',whitept='yellow',smoothing=0,independence=0,strength=1.0)
ffmpeg.output(processed, input.audio, './lake_normalize_yellow.mp4').run()

〇変換後動画

関連情報

・様々な動画に関するアプリケーションについては、以下のまとめを参照してください。
動画関連アプリケーションのまとめ

JupyterLab AppをRockyLinux 8にインストールする

JupyterLab AppでJupyterLabをDesktopアプリケーションとして実行できるようになります。

〇JupyterLab Appの画面

インストール方法

以下のコマンドを実行します。
wget https://github.com/jupyterlab/jupyterlab_app/releases/download/v3.1.12-2/JupyterLab-Setup-Fedora.rpm

sudo dnf -y install ./JupyterLab-Setup-Fedora.rpm

関連情報

・JupyterLab Appのgithubリポジトリ
https://github.com/jupyterlab/jupyterlab_app

Debian 11(Bullseye)にZimをインストールする

Zim はデスクトップWikiアプリです。ローカルで自分だけのwikiページを作成して情報を整理することができます。

〇Zimの画面

インストール方法

シェルから以下のコマンド実行します
sudo apt-get -y install zim

関連情報

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