があらんどう

伽藍洞です。

ストランドビーストを作りたい

いまさら・・・・・・っ!
という感じだが、テオ・ヤンセンのストランドビーストにはまった。

昔から気にはなっていたのだが、大人の科学なんかも買いそびれてしまっていて手をだせないでいた。
大人の科学はアマゾンで見るとプレミア価格になってしまっていてこれを買うのはなんかなぁという思いが募っていた。
久しぶりにアマゾンで調べると海外製?のストランドビーストのおもちゃが売っているのでこれを購入して組み立てたのが、2か月くらい前。
扇風機の風を当てて動く姿をみるとやっぱり感動。
のそり・・・というか のたり・・・。というか動くさまがかっこいい。
風の強さによってはサカサカサカって感じにもなるが、
個人的には微風でのたり感が出ている方が好き。

・・・となると自分で一から作りたくなるというもの。
風を動力とせずにモーターで動かしたいというのが本音。
arduinoとか積んで自立歩行するとこまでいくといいなと考え始めた。
調べてないけどまぁ何番煎じなんだろうという気はするが。
そんなことはどうでもいいのだ自分の手でつくることに意義があると・・・。

続きを読む

igorのwaveをテキストファイルとして書き出す

Igorを使って計算した後に結果をテキストやcsv形式で書き出したいことがときどきある。

ときどきなので毎回、どうやってやるんだっけと調べたり、過去のファイルを参照しているのでメモ。

続きを読む

フーリエ変換を利用したローパスフィルタ@Labview

取得した信号にフィルタをかけてノイズを除去したい場面はしばしば登場する。

電気信号だとローパスフィルタやハイパスフィルタを回路で組むわけだが、信号を取得してしまえば電気・電子回路では考えないられないくらい急峻な特性をもつフィルタを作成することが可能となる。

 

信号取得の速度(AD変換レート)とかで取得できる信号に限界はあるだろうが、ある特定のノイズ(ACノイズとか)があるときは強力な方法になると思う。

例えば10Hz以下の周波数の電気信号をみたいときにACノイズが邪魔になると電気的なローパスフィルタで除くのは結構骨が折れるのではないかと思う。しかし、以下の手法では比較的簡単かつ効果的だ。

 

方法の概略としては

信号取得

  ↓

フーリエ変換

  ↓ 

フィルタリング

  ↓ 

フーリエ変換

となる。

 

上のようなプログラムをLabviewで作製してみた。

続きを読む

1D waveをつなげてイメージプロットをつくる@igor pro

1次元のwaveを横に並べてイメージプロット(インテンシティプロット)を作るための方法。

 

素材になる1Dwaveはすでに準備されているとして話を進める。

 

続きを読む

2D waveの任意の箇所を切り抜くマクロ@igor pro

igor で作製 or 読み込んだ2D wave任意の箇所を切り取りたい。

画像の任意の箇所だけ表示したいしたいときのマクロ

 

Contro + I で切り取りたい部分の左上と右上にカーソルをおく。

その値を参照して切り取る

(めんどくさいなもっと簡単にしたい・・・)

 

macro image_kiritori()

//行の削除(縦方向の削除)

//画像の右側 ◯から△行削除
DeletePoints 57,43, wave1

//画像の左側
DeletePoints 0,38, wave1


//列の削除(横方向の削除)


//画像の下側
DeletePoints/M=1 84,16, wave1

//画像の上側
DeletePoints/M=1 0,25, wave1

igorの2D配列を転置する

igor pro の2D配列の行と列を入れ替えたいときのコマンド「Matrixtranspose」の使用方法についてメモ。

 

2D waveを使ってimage plotを作りたいけど、縦軸と横軸を逆にしたいときに使える。

 

コマンド名の後に転置したい2D waveの名前を書くだけ。

例えば、2D waveの名前がwave2Dならば

 

Matrixtranspose wave2D

 

と書く。