投稿

Ultimaker CuraにFlashForge Finder2を追加する

イメージ
序章 FlashForge Finder2ってなんだと思う人が多いと思う。 まず、FlashForge Finder2は以下の画像のような3Dプリンターである。   このプリンターをUltimaker Curaで使いたいのでプリセットを作る。   本題 まず、Ultimaker Cura(以降、Cura)にプリンターを追加する。 ここから、Custom printerを選択し、名前を変更する。 今回はプリンターの名前をわかりやすく「FlashForge Finder2」にした。 「追加」を押して次に行く。 まず、XYZの設定をすべて「150」に変更する。 そして下にある「G-Codeの開始」と「G-codeの終了」に以下の文字をコピペする。 G-Code開始 M118 X15.00 Y15.00 Z0.51 T0 M140 S{material_bed_temperature} T0 M104 S{material_print_temperature} T0 M104 S0 T1 M107 G90 G28 M132 X Y Z A B G1 Z50.00 F400 G161 X Y F3300 M7 T0 M6 T0 M651 M907 X100 Y100 Z40 A100 B20 M108 T0 G-Code終了 M104 S0 T0 G28 X Y M132 X Y Z A B G91 M18 あとは画像を参照して設定する。 それが終わったら、「Extruder」にも変更を入れる、こっちも画像参照。  

Make it!制作 階段ピアノ

イメージ
使用した材料 ・べニア板(3x6 ft, 厚さ2mm) x 14枚 ・アルミテープ(幅50mm) x 55m ・タコ紐 (直径0.7mm) x 20m ・ペンキ艶あり白色 x 2L ・ペンキ艶あり黒色 x 0.2L ・マスキングテープ x 50m ・配線用ケーブル x15m ・Arduino Uno x1個 ・ブレッドボード x1個 ・ジャンパ線 x15本  ・10kΩ 1/8w抵抗 x12個 ・Macbook Air x1台 ・25wスピーカー x2台 ・50wアンプ x1台 ・ESP32-C3 x 15個   材料代で合計金額50000円ほど  Mackbookやスピーカーの金額は含まれていません 使用したソフト ・Garage Band ・Arduino IDE   完成した作品 工夫した箇所 鍵盤の戻りの良さを調べながら作成しました。   仕組み   実は技術仕様が変わり、データの送信をすべてWiFiを使っています  詳細な仕様 Arduino UnoのMidiキーボード認識にはmocolufaファームウェアをatmega16U2にフラッシュしました。 https://github.com/kuwatay/mocolufa   およそ5kgくらいから鍵盤は反応します。 チャタリング修正はBounce2を使用しています。    情報の送信はUDPで行っているので、セーブGIに引っかかった情報はすべて廃棄されます。 おかげでラグが少なく情報を渡せていますが、頻繁に音が鳴らなくなります。おそらくESP32のWiFiがスペック落ちを防ぐために頻繁に通信しないようにプログラムされているのかもしれません。 遊び方 上に乗るとピアノの鍵盤に対応した音が鳴ります。  一つの鍵盤に対して一つの音が鳴ります。 荷重が一つの鍵盤に重複したときは新たに音はなりません。   ...

大気の汚れ度を測る。MQ135 二酸化炭素測定

イメージ
こんにちは、こんばんは aliexpressの海を漂っていたところ、 面白いセンサーを見つけました。 一個140円程度で5個買いました。 開封してみると Flying-Fish MQ135の文字が これは大気の汚染度を測るセンサーになっています。 CO2だとか測ることができます。 実際にやっていきます。 用意するもの  ・MQ135 ・Arduino もしくは ESP32 ・ジャンパ線 センサについて このセンサーはいろいろごちゃごちゃ基盤に書いてありますが、型番は『MQ135』で基板を製造したメーカーは『Flying-Fish( 飞鱼 )』 (トビウオじゃん...) というメーカーのようです。 MQ135を製造したメーカーは『Zhengzhow Winsen(炜盛科技)』というメーカーのようです。 このセンサは、多くの熱が出ます。これは故障しているわけではなく、センサの仕組みが原因になっています。安価なガス(空気)センサはセンサの素子をヒーターで温めることによって抵抗値が変わり、その抵抗値でガスを検出します。なのでやけどはするほどではないですが、センサ自体は結構発熱します。 ちなみに精度が良くて、値段が高いCO2センサは、レーザ光を出して空気の反射量、吸収量を調べてCO2濃度を調べます。 回路 まずはデータシートを調べます。 https://pdf1.alldatasheet.com/datasheet-pdf/view/1307647/WINSEN/MQ135.html またモジュールの回路図はコピー品だったようで同じ回路図のものをネットで発見しました。 この回路図は以下のブログで閲覧することができます。(コードも載ってるしこのサイトに行ったほうが早くできると思います。) https://qiita.com/tomorrow56/items/127b06a6ba8bede56dff まあ基本はジャンパ線をVCCを5Vに、GNDはGNDに、DOは結線はなし、A0はADC(アナログデジタルコンバータ)がついているピンにINすればよろしいです。 D0は一定の入力電圧がオペア...

サークルで新しい3Dプリンターを購入

イメージ
新しい3Dプリンターを買いました。 あとステージがバカすぎたので早速改造しました。 買った3Dプリンター Creality Ender 3 今のところいい動き X軸のベルトテンションが弱いのが気になる 改造した部分 ステージのネジがすぐ伸びきってしまったので長いものに交換 20mmから25mmに交換 ちなみに左側だけ変えた

UnityとArduinoを使っておみくじゲームを作ろう

イメージ
  今回は最近個人的にハマっているUnityとArduinoを使ったゲーム制作を紹介したいと思います。   ゲームアイディア   まず、Unity上におみくじ筒を設置します。Arduinoを利用しておみくじ筒を傾けて、Arduino側がある一定の傾きを検知するとUnity側で画面遷移して、ランダムで大吉や中吉などのおみくじがランダムで表示されるおみくじゲームを作りました。       用意するもの   ・Unity バージョン2022.3.8.f1  ・Arduino IDE  ・Arduino Mega  ・Wit Motion(ジャイロセンサ)  ・ジャンパー線  ・MAX3323(RS232をTTLに変換するモジュール)       UnityとArduinoを連携させる    まず、Unityでゲームを作る前にこのゲームで大切なUnityとArduinoの連携を行います。  Arduino側  Arduinoに書き込むソースコードははGiot hubから参照しました 。URLは下記に添付します。 ・ https://github.com/WITMOTION/WitStandardModbus_WT901C485 このソースコードを使うとき、REG.h、wit_c_sdk.hなどのライブラリを入れてあげないとエラーが起こるので注意してください。   Unity側   今回ArduinoとUnityを連携させるときの方法として、シリアル通信をして連携させました。参考サイトは下記に添付します。  ・ https://qiita.com/Ninagawa_Izumi/items/f6595dcf788dd316be8a ここで「SerialReceive」というスクリプトがあって参考URLのコードから少し書き換えましたが、またあとで説明します。   おみくじゲーム作成 ①スタート画面作成 ...

SambaでNASを作る

イメージ
 SambaでNASを立てるときによく忘れるのでメモメモ  環境 ubuntu 20.04 謎のintel cpuが載ったノーパソ インストール Sambaをインストールします sudo apt update sudo apt samba -y なんかapt-getは推奨されなくなったようです。理由はわからん。 必要なソフトウェア+ファイルがインストールされます。   ファイヤーウォールの設定 sambaでは以下のポートを使用します 137 : 名前登録用 138 : ファイル閲覧用 139 : ファイル閲覧+プリンター接続用 445 : ファイル閲覧+プリンター接続用  それなりのサーバー管理者であれば開けるポートは慎重に決めなきゃいけないと思いますが、「どうでもいいわ、動けばいい!」のひとは全部ポート開放してください。 sudo ufw allow 137 sudo ufw allow 138 sudo ufw allow 139 sudo ufw allow 445   リロードしときます sudo ufw reload   ステータスを使って開いたか確認します。 sudo ufw status   アカウント設定とか アカウントの必要とか必要じゃないとかはsambaのconfigファイルの設定によって変わりますが、今回はログインしなきゃいけないNASと、誰でも使えるNASを作ります。   まずログイン用のアカウントを作ります。 最初に作ったunixユーザーでいいやって人はやる必要ないです。 sudo pdbedit -a "ここにユーザー名" パスワードを要求されるので入れましょう。   共有フォルダ(ディレクトリ)を作る フォルダを作ります。 sudo mkdir /home/test/ ファイル権限を変えます。 sudo chmod 777 /home/test/   ファイル権限の意味が分からんと思う人が出てくると思うので、説明用の画像を作りました。 ...

Arduinoってなんだろう?

Arduinoってなんだろう? Arduino (アルデュイーノ)はプログラムを使って電子部品を制御する機械です。 一般的にはそういった機械のことを、マイクロコンピュータといいます。  主に教育用のマイクロコンピュータとして作られました。 使い勝手がよく、安価であるため、いろいろな技術者も使っています。 Arduino公式サイト(英語) https://www.arduino.cc/   Arduinoは誰が使える? Arduinoは『オープンソース』と言ってすべての技術や設計図が無償で公開されていて、誰でも使えます。 基本的には英語で書くプログラムが前提となりますが、Arduinoはプログラムが書けない小学生、中学生のためにブロックを組み合わせてプログラムする拡張機能を持っています。 以下のURLを参考にして下さい。 https://stemship.com/arduino-visual-programming/ 難しくてよくわからない場合は... 電気、電子回路に関することは専門知識を必要とすることが多く、保護者の方たちや、お子さんの自主性だけで始めるのは難しいと思います。 そういったときは、地域主催で行っているイベントなどに参加してみて、楽しく学んでみるのが一番いいと思います。 このページは三条市立大学で行われる、オープンキャンパス、科学イベントで使われる解説ページです。

RS232とTTLを変換する

イメージ
こんにちは、今回はRS232からTTLに変換する過程+いろいろを説明したいと思います。   いきさつ なんで急にこんなことを言い始めたかというと、弊サークルでWitmotionというジャイロセンサーを購入しました。 ですがいくらSerial通信しようとしてもできない... さすがに変だと思って調べなおしてみたら、なんとTTLではなくRS232で通信するという方式でした。RS232モデルを買ってたんですよね。完全にアホです。 通信できなかった理由は次で説明します。   RS232とTTLの違い まずRS232は以下のような配線になっています。wikipedia.orgより そしてTTLの配線がこうです     まずピンの本数からして、違いますが、もっと根本的な違いがあります。   まずRS232は-5Vからの電圧を1とし、5Vからの電圧を0とします。   TTLは5Vの電圧を1とし、0Vの電圧を0とします。   このように規格の違いから接続することはできません。   対処法 ・回路を作る ・モジュールを使う 基本的にモジュールを使ったほうが安全回路がありますし、いいと思います。 回路を作る場合はこのようにします。 やっぱ自分で考えて。NOT使えば行けると思います。 モジュールの場合はこうします。 amazonでMAX3232という相互変換可能なモジュールを購入しました   画像のこれですね。 んで、実際にRS232のコネクタは使わないので、コネクタを外して、ピンをつけたのが以下の写真です。   すべてストレートケーブルで接続します。 図にするとこんな感じ これで接続できました。 実際の写真  

音が出るゴミ箱

イメージ
使用した材料  ・べニア板(3x6ft z=4mm) x2枚 ・PLA製自作三次元Lジョイント x12個 ・スカイブルー色ペンキ x1L ・白色ペンキ x0.1L ・木ねじ(3.5mmx25) x28本 ・Raspberry Pi 3 B+ x1個 ・人感センサー(フレネルレンズIRセンサー) x1個 ・ジャンパ線 x9本 ・5wスピーカー x1 使用したソフト、ライブラリ ・Raspberry Pi OS ・Python ・RPi.GPIO(ライブラリ) ・PlaySound(ライブラリ) 完成した作品 ごみの内圧で裏蓋が吹き飛んでみっともないことになってます。 仕組み 今回はA案を採用しています。 (なんかRaspiの機嫌が悪くてopencvが入れられなかった) 詳細な仕様 物体の感知には人感センサー(フレネルレンズ付きのフォトトランジスタ)を使用しています。検知された信号はRaspberry Pi 3B+のGPIOに入力が入り、Pyhtonで作られたオリジナルのプログラムによって、mp3音源がで再生されます。 仕様上人の手を検知するぎりぎりのところまで手を入れるか、温度変化がある物体でないと反応しません。    プログラム  準備中 遊び方 ゴミ箱の口からゆっくりごみを捨てます。 失敗点 ・今回の展示では開幕でRaspberry Piが度重なる再起動によりプログラムが起動しなくなりました。 ・ゴミ箱の裏蓋をマグネット方式にしましたがゴミの内圧に耐えられず、ごみ箱が破壊しました。 ・スピーカーの音量が小さすぎて(5wのスピーカーを使用)音が聞こえませんでした。 ・ピザ窯で忙しくて面倒を見れなかった。   改善方法 ・プログラムをスタートアップに入れておく。 ・ゴミ箱の扉を蝶番等で作って剛性を保つ。 ・スピーカーを屋外であれば20w以上のものを使う。 ・ピザ窯はもうやらない。

TFTのディスプレイを使う

イメージ
こんにちは、こんばんは 今回はaliexpressで見つけたよくわからないディスプレイを使いたいと思います。(3.5inchで安いのが全然なかった...) 1200円程度で買えました。安い。 でもよくわかんないので調べる必要があるようです。   お前は誰だ? コイツは何なんだと色々調べていたらLCD Wikiとやらに同じ型のものを発見しました。 http://www.lcdwiki.com/3.5inch_SPI_Module_ILI9488_SKU:MSP3520 ILI9488と書いてあります。 タッチ不可、SDカード使用不可なポンコツですがSPI通信を使うことによって画像を出すことが可能なようです。 ちなみに画質は480x320です。  3:2のディスプレイみたいですね。 とりあえずLCD Wikiのライブラリだと動作している報告があるので、それでやってみます。 使うもの ・Arduino Uno ・ジャンパ線 ・ビット変換機(8ch分ぐらいあるといい) ・ILI9488(買ったディスプレイ)   物の説明 『ちょっと待って、ビット変換機ってなに?』って思っている人がいるかもしれません。 そうだと思います。 ビット変換機は5Vの信号を3.3Vに変換するための部品です。ILI9488は5Vには対応していないので(無理やり対応させることはできるが壊れるかも)これを組み込んで、3.3Vに信号レベルを落としてやる必要があります。   回路 http://www.lcdwiki.com/3.5inch_SPI_Module_ILI9488_SKU:MSP3520 このページにある、ピンアサインを確認しながら組みます。   こうなるようです。 実際はArduino Unoに直挿しはせず、一度ビット変換機を経由してから配線します。      リアルガチのほうの写真 プログラム プログラムは以下の通りです。 http://www.lcdwiki.com/r...

巨大階段ピアノ

イメージ
使用した材料 ・べニア板(3x6 ft, 厚さ2mm) x 8枚 ・アルミテープ(幅50mm) x 55m ・タコ紐 (直径0.7mm) x 20m ・ペンキ艶あり白色 x 2L ・ペンキ艶あり黒色 x 0.2L ・マスキングテープ x 50m ・配線用ケーブル x15m ・Arduino Uno x1個 ・ブレッドボード x1個 ・ジャンパ線 x15本  ・10kΩ 1/8w抵抗 x12個 ・Macbook Air x1台 ・不織布白色(幅1800mm) x5m  ・黒色カーペット(幅700mm) x3m ・25wスピーカー x2台 ・50wアンプ x1台   使用したソフト ・Garage Band ・Arduino IDE   完成した作品 工夫した箇所 鍵盤の戻りの良さを調べながら作成しました。   仕組み 詳細な仕様 Arduino UnoのMidiキーボード認識にはmocolufaファームウェアをatmega16U2にフラッシュしました。 https://github.com/kuwatay/mocolufa   およそ5kgくらいから鍵盤は反応します。 チャタリング修正はBounce2を使用しています。   プログラム #include <MIDI.h> #include <Bounce2.h> MIDI_CREATE_DEFAULT_INSTANCE(); byte pins[12] = { 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2}; byte pitch[12] = { 72, 74, 76, 77, 79, 81, 83, 84, 86, 88, 89, 91}; int status[12] = {0}; Bounce button[] = {Boun...

腕時計の電池を交換する

イメージ
こんにちは 今回はやる気がない記事です 暇な方は見てどうぞ   なぜ腕時計?  若干高価な時計を持っていたので開けたら面白いかなーと思って記事にしました。 用意するもの ・腕時計電池交換キット ・ハサミ ・腕 ・新品のボタン電池 道具の写真 分解するためのキットはアマゾンで1100円で買いました。 安くね? サービスショット 腕時計とゆかいな仲間たち 分解する まず、裏のスクリューの蓋を開けます。オープンセサミ そうするとでかでかと電池が構えていました。 電池はCR2012とかいうマイナー電池です。 100均になかったのでホムセンで300円で買いました。高い ちなみに蓋のシール部分が剥げたり、ぽろぽろと崩れたりしていたらもう使えないので新しいシールを買って張っておいてください。 まあ時計屋で交換すると2000円とられるので安いもんだと思いました。 古い電池はもぎ取って捨てます。 バイバイ半年電池を変えなかった時計の電池君。  じゃあパッケージを開けます。 パナソニックの企業努力のおかげでパッケージを切ることができません。 何度も指でトライしたためパッケージがズタズタです。 おとなしくハサミを使いましょう。 簡単に開いた。 新しい電池を思いっきりはめ込みましょう。 意外と勢いが必要だ そしたらくるくるして蓋を取り付けます。 お疲れさまでした 無事いい感じに動いてます。  電池代+キット代あわせて1400円くらいです。安い  

郵便番号をSqlite3でデータベースにしてみた

※この記事は昔書いたブログページの削除に伴い、避難させてきた記事です。 郵便番号をSqlite3でデータベースにしてみました。 作成するにあたって以下のサイトを参考にさせて頂きました。ありがとうございます。 https://tnomura9.exblog.jp/17529957/ 環境:  ハードウェア:raspberryPI3 model B    OS:Raspbian1.4 作ってみる まず郵便番号のcsvファイルを日本郵便のサイトから拾ってきます。 https://www.post.japanpost.jp/zipcode/download.html ちなみに私は 促音・拗音を小書きで表記しないもの を拾ってきました。 拾ってきたcsvファイルのフォーマットはshift-jisのためターミナルやデータベースにデータを格納する際に文字化けを起こす場合があります。(というかほぼ起こります) そのためフォーマットをutf-8にするためをExcelでutf-8に出力しなおします。 適当なディレクトリを作成します。 ~$ mkdir Postnumbers 作成されているか確認します。 ~$ ls Postnumbers ディレクトリに移動します。 ~$ cd ./Postnumbers utf-8にすることができたファイルを作成したディレクトリに何らかの方法でぶちこみます。 いよいよお待ちかねのSqlite3です。 名前は適当です。 ~/Postnumbers $ sqlite3 address.db ターミナルに以下のコマンドを入力しテーブルを作成します。 sqlite> CREATE TABLE addressOOGAKI(number, firstaddress, address, region1, region2, region3, regionK1, regionK2, regionK3, id0, id1, id2, id3, id4, id5); OOGAKIは大書きっていうことで決して変な意味ではないです。 入力したら正しくできているか確認しましょう。 sqlite> .schema CREATE TABLE addressOOGAKI(number, firstaddress, address, region1,...

minecraft bedrock server(統合版サーバー)をたててみた

※この記事は昔書いたブログページの削除に伴い、避難させてきた記事です。  みんな大好きMinecraftのBedrock server(統合版)を建ててみたいと思います。 ・目的  サーバーを使用してみんなと遊びたい。 ・環境  ubuntu 18.04  dynabook 2012年くらいに買ったやつ 作成する前に「なぜwindowsじゃないの?」かと疑問に思う方もいるかもしれません(思わない人もいるかも)。なぜかいうとwindowsではうまくいかなかったからです。 Bedrock server1.14.60.5ではなぜかサーバーとクライアントを一緒にできなかったのです。 UWP ループバックを解除するコマンドを使っても解決しませんでした... 今のバージョンでは解決されているかもしれません。 そのため私はubuntuでサーバーを作成することにしました。 まあこの症状は私の環境だけかもしれませんがとくに解決策もなかったため、ubuntuで作ります(鋼の決意)。 「サーバーの作り方もubuntuもPCもわかんねーよ」という方はRealmsのほうに入ったほうが早いと思います。 ↓↓↓↓↓ https://www.minecraft.net/ja-jp/realms-plus 作ってみる まず適当なディレクトリを作ります。   ~$ mkdir minecraft_server  作成したディレクトリに移動しBedrock serverをダウンロードします。 ※ 注意※ サーバーファイルはダウンロードした際に マインクラフト エンドユーザーライセンス規約 および プライバシーポリシー に同意したとみなされます!   ~$ cd ./minecraft_server    ~/minecraft_server $ wget https://minecraft.azureedge.net/bin-linux/bedrock-server-1.14.60.5.zip  ...

ESP8266にArduino IDEから書き込みたい

イメージ
※この記事は昔書いたブログページの削除に伴い、避難させてきた記事です。 簡潔に書きます 記事を書いた経緯 Arduino IDEからESP8266正確にはwemos d1というマイコンボードに書き込む際に苦労したので書き残しておきます。  wemos製のd1というESP8266のボードが出てきてしかも値段が安くamazonから買えるので入手性がいい。そして「Arduino Unoと同じ形をしていて使いやすそう」と購入する人は多くいそうです。 ですが出てくる記事は2017年ごろの記事ばかりでしかもwebサイトのリンクがほとんど死んでいる... そこで調べまくったらマイコンに書き込めたので書き残そうというわけです。 購入からArduino IDEを入れるまで https://www.amazon.co.jp/dp/B01D1D0EO4/ 購入はこのリンクからあるいは https://www.amazon.co.jp/s?k=wemos+d1 この検索リンクからどうぞ 見た目はこれ      ESP8266と書いてあります。 Serial変換ICはWCH製です。ドライバはArduino IDEを入れる際に標準で入ってきますが入ってないよって方は少し調べると出てきますのでそれを参考にしてください。 Arduino IDEの入れ方も調べれば出てくるので割愛します。 本題 それでは本題のwemos d1にどう書き込めばよいのでしょうか。 まず最初に基板にwemos.ccと書いてあるためwebページに飛んでみるとd1の形が明らかに違いました。 https://www.wemos.cc/en/latest/ そしてパッケージリストのURLを書き足して、プリセット入れたとしても書き込むことができません。 そこで旧バージョンの登場です。 Ver2.6.3のパッケージを入れます。 https://github.com/esp8266/Arduino/releases/tag/2.6.3  あるいはこのjsonのURLをArduino IDEの追加ボードURLのところに入れます。 https://arduino.esp8266.com/stable/package_esp8266com_index.json そしてボードマネージャーを開きVe...