投稿

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...

CADを使って羽根(インペラ)を作る SolidWorks

イメージ
こんにちは、こんばんは このページを見たということはCADを使ってタービン、インペラを作ることが何かと増えていると思います。 そこで作り方を書き込んでいきたいと思います。   SolidWorksでやる SolidWorksで覚えるべき用語集 ソリッド(Solid) … 2Dモデルが3Dモデルになったもの フィーチャー … 3Dモデルを編集する方法 サーフェス … 2Dモデル、3Dモデルの面のこと スケッチ … 2Dモデルを作成する際に下書きをするための操作   ※またSolidWorksがCAD編集に対応しているファイルは.SLDPRTと.SLDASMだけです。 まず、適当な面に軸の断面図を作成する。   フィーチャーから回転拡張を行い、立体的な軸を作成する。   ソリッドになるとモデルは灰色になります。 円の辺を軸の頂点に作成する。 上と下に羽根の形状の面を作る。 上の羽を作成するときは上の面にスケッチして作成する。 また羽の角度も設定する。   上下面にスケッチを作成する。 3Dスケッチで上と下の面を接続する辺を二つ作る。 まず、3Dスケッチ(スケッチボタンのプルダウンメニューにある)を使って適当に線を接続する。線はスプラインを使えば滑らかな曲線になる。 内側の辺を作る。   中心線を使い、外の円の縁とY軸の位置を合わせる。   あとは縁の形を自分の好みの形に変える。 ロフトを使いフィーチャーを作成する。   作成したフィーチャーを円型に複製する。   全てのフィーチャーを接続して終了。 羽をカットしたいときは円形カットを使用する。 利点 ・比較的に簡単に作成できる 欠点 ・フィーチャー構成が頻繁に失敗する(なぜ?) ・詳細な羽根の設計ができない