memorandums

日々のメモです。

うんこ座り、なかなかいいっす

ちょっと前に以下のエントリーを書きました。

足腰のだるさ解消に効くストレッチ(あくまで個人的な意見です) - memorandums

こういうの書いたけど今はやってない。。。ってあるあるなんです。ごめんなさい。それでも本当に足腰がダルいときにはやっていますけど。

最近、取り入れているのが「うんこ座り」です。

これは元ネタがあります。以下です。

AV男優しみけんが教える うんこ座りでオトコの悩みの大半は解決する!

AV男優しみけんが教える うんこ座りでオトコの悩みの大半は解決する!

数週間前に娘のテニスの試合が2日連続でありまして、観戦に行ったのですが、待ち時間が長くて。。。しかも炎天下で。。。近くにイオンがあったので下の娘と避難してたんですね。。。イオンで昼ごはんたべて、まだ時間があったので本屋に行ってこの本を見かけました。

手に取るのを躊躇しましたが。。。あの!?しみけんさんが(←体力もろもろないとできない職業...という意味)語る健康法は男としては説得力を感じます。

ざーっと立ち読みさせてもらいました(買わなかったんですね。。。ごめんなさい)。

うんこ座りだけでなく、様々な方法が書かれていましたが、要点は以下の記事にかかれているようなことでした。

草食系男子、セックスレス、少子高齢化問題の解決策は“うんこ座り”にあり!? AV男優しみけんの提言 | 日刊SPA!

面倒な型とかポーズとかパターンとかないんです。とにかく「うんこ座り」するだけ。60秒を目安に1日3回くらい。

深呼吸も大事だって書かれていた。。。と思います。うんこ座りをしながら、下腹部にゆっくり空気を入れていくようにお腹を膨らませます。膨らませたところでちょっと止める。血流がじわじわっとくる感じがなかなか気持ちいいです。深呼吸も重要ですね。

そして、しびれてきて立ち上がったあとに血流が戻るときもなかなかの気持ちよさ。。。スケートやスキーのシューズを脱いだときの開放感に似ています。

ギックリ腰とか腰痛とかに悪いんじゃない?とも思ったのですが、少なくともこのポーズをしていて腰痛が悪化したとは感じません。あくまで個人的な感想かもしれません。

ちなみに、以下、とりあえず作った、うんこ座りデスク、です😁。ITエンジニアの方?、スタンディングデスクの次はうんこ座りデスクですよ。たぶん。

f:id:ke_takahashi:20180814134550j:plain

足腰がダルい。。。という方はぜひやってみてくださいね。うんこ座り😁

おしまい。

Mendeley Desktopが同期中に落ちる ⇒ なぜか復旧した

アプリを起動すると自動的に同期が始まり途中でコケる。。。あるあるです。何度もアプリを再起動しても変わらず。直らないときにはアプリを再インストールしたりする。。。ということもありました。

今回は、以下の手順で直ったので、個人メモとして記録しておきます。

環境はmacOS10.13.6でMendeley Destopは1.18です。

  1. ターミナルを起動して /Applications/Mendeley Desktop.app/Contents/MacOS に移動します。
  2. ./Mendeley Desktop とタイプしてエンター。Mendeley Desktopアプリが起動します。
  3. ターミナル内にログ?が出力されます。そこにクラッシュした理由が出てくる場合があるようです。
  4. その該当文献のデータを修正(PDFを貼り直したり、削除したり)します。ちなみにMendeley Desktopを起動すると同期が始まるのでまたクラッシュしちゃいます。そのため、アプリ最下段のステータスバー?で「×」を押して同期を途中で止めましょう。するとMendeley内で作業ができるはずです。
  5. 再度、./Mendeley Desktop とタイプしてエンター。

以上を繰り返します。


ちなみに、Mendeleyのログファイルは/Users/ユーザ名/Library/Application Support/Mendeley Desktopにあります。それを見てもいいですが、ターミナルに出てくる文字の方が情報量が少ないので楽チンかと思います。

あと、これもなんとなくなんですが、これが発生する原因は以下のケースのように思います。たぶん。。。ですが。

Mendeley Desktopアプリ内で文献をダブクリするとアプリ内のPDFビュワー?で表示されます。ただ、このビュワーはMacのプレビューに比べると使いにくいんですね。。。拡大・縮小がトラックパッドでできなかったり、単語をタップして調べられないとか。。。で、いつもプレビューで見てマーカーなどしているんですね。。。その更新したファイルがどうも悪さをしているような気がします。。。あくまで直感ですが。

ま、とりあえず個人メモでした。

LEDコースター(再び)

2年ほど前に初めてAdafruitのNeopixelなるものを知り、感動して以下のようなものを作ったことがありました。

www.youtube.com

で、最近、LEDテープをいじることがあり。

また、店先で以下のようなものを見つけて、ああ、また作ってみたいな。。。とやる気がムクムクと。

f:id:ke_takahashi:20180815001133j:plain

もともとは中華Nanoで作っていたのですが、小型とはいえ邪魔でした。

手元に8pinoがあったので、その使い方を試すのとあわせて、コースターを作り直してみました。

8pinoの使い方は、今日の夕方にブログに書いた通りです。

で、配線をやり直して、電池ボックスもできれば小さくしたかったのでボタン電池を集めて、電池ケースを3Dモデルとして作成して3Dプリントした結果が以下のようになりました。

youtu.be

もう少しがんばればボタン電池もコースターの中に収納できると思います。

で、自宅に持ち帰って、早速、ウィスキーグラス(ニッカね😁)をおいてみると。。。「まぁ、なんということでしょう。。。😁」

youtu.be

いい感じですよね?

ちなみに、ぐぐってみると。。。似たようなプロジェクトがたくさん見つかりました。同じようなことを考えている人はゴマンといます。

論文読んでいる途中でどうしても気になってしまい。。。夕方から取り掛かって夜まで遊んでいました😁。

まぁ、こんな日もあるかな。

とりあえず今日の成果物でした。

ビルドタック素晴らしい

3Dプリンタ(Afinia H480)を研究室に導入し、やっと最近、学生にも卒業研究や少人数ゼミで普通に使ってもらえるようになって何よりなんですが。

印刷のときに使用するセルボードは最初から付属してきた2枚を使いまわしてきたんですね。ちなみに以下のようなものです。

消耗品とわかってはいるのですが、もったいないので使い続けてきました。

最近、さすがにゴミが取れなくなってしまい、印刷品質にも影響がでてきました。

ちょっと前に、剥がしやすくていいよ、と聞いたのでビルドタックというものを購入し使わずにいました。以下のようなものです。

AFINIA(アフィニア) 純正ビルドタック(3枚)

AFINIA(アフィニア) 純正ビルドタック(3枚)

以下、印刷しているところです。印字がとてもスムーズです。

f:id:ke_takahashi:20180814184927j:plain

そして、剥がしてみたところを撮影してみました。

youtu.be

3Dプリンタで印刷した経験のある方ならわかると思いますが、印刷したあとはヘラでガリガリ取らなければならず。。。結構、重労働でした。

ほとんど抵抗もなく剥がせます。素晴らしいです。

はい、それだけなんですけどね。。。記録として残しておきたいと思いエントリーを書いた次第でした。

(いまさら)8pino使ってみた

本件の表題でたどり着いた方で、解決方法をお探しの方は一番下の行をお読みください。



学生さんが卒業研究でインタラクティブなハンガーを作るっていうので、そのときにふと思い出した8pinoを発注したんですね。

小型なArduinoといえばそれくらいしか知らなかったので。。。(その後、調べれば他にも選択肢があって。。。digisparkとか)

ずいぶん前のプロダクトだったせいか業者さんもなかなか見つけられず、1〜2ヶ月かかって7月末にやっと納品されたんです。

ちなみに8pinoはこんなやつです。スイッチサイエンスでも在庫なしで。。。

www.switch-science.com

ぐぐると2014年とか2015年とかですからね。。。8pino.ccという公式サイトもクローズしているみたいです。構っている人がもういないんでしょうね。

とりあえずいくつか買ってしまったので動かしてみないと、とあれこれやってみました。

手順はAdafruitのページの通りです。

概略の手順としては、

  • digisparkと同様にPreferencesにボードURLを追加し(ちなみにdigisparkのURLがすでに入力済みだったのですが、カンマ区切りにすると複数のURLが入れられるようです)
  • ボードマネージャでtrinketで検索して追加。
  • ボード種類をAdafruit Trinket (ATiny85 @ 8MHz)を指定し、書き込み装置にUSBtinyISPを選択。
  • 8pinoをusbケーブルに差し込み反対側をPCのUSBポートに差し込み、Arduinoの書き込みボタンを押せばOKです。

この辺の手順は8pinoのwikipediaのページPDFのリンクがありまして、それを見ながらやりました。DropBoxのリンクなのでいずれ切れるのかな。。。とか。


で、この程度の情報ならわざわざこのエントリーを書く必要はなかったと思いますが、実は、これがなかなかうまく行かなかったんですね。。。上記のPDFに実は書いてあるんですが、最初、それを読んだだけでは意図をくみとることができませんでした。そこを書きますね。

環境は、Macbook Air6.1, macOS 10. 13.6で、Arduino IDEは1.8.5です。

この状態で、USBケーブルに8pinoを差し込み、書き込みボタンを押すと。。。以下のメッセージが表示されます。

“AVRDude: Could not find USBTiny Device (0x1781/0xc9f)”

以下、試したこと。

(1)USBケーブルを3、4本くらい変えました ⇒ ダメ

(2)USBポートを変えました ⇒ ダメ

(3)他の8pinoをつなげてみた ⇒ ダメ

(4)Arduino IDE 1.6.5に変えてみました ⇒ ダメ

もう万策尽きた。。。ところで、もしや。。。と思って上記(2)の違うポートに差し替えてみると。。。すんなり転送できました!

結局なんだったか。。。?

Macbook AirのUSBポートは3.0なのでMacbookのUSBポートにそのまま指しても転送できません。でも上記(2)で試してダメだったんじゃん?と。

どーでもいいかもしれませんが、一応、図説してみます。

f:id:ke_takahashi:20180814180144p:plain

MBAを持ち歩いているので、研究室ではCinema Displayに接続してクラムシェルモードで使っています。Cinema DisplayにはApple Keyboardが繋がっていまして、上記の(2)はキーボードのポートにつないだんですね。これでもUSB2.0になるはずですから。。。

で、ダメもとで繋いだのはCinema Display裏のUSBポートだったんです。

後になればわかるのですが、電力を必要とするデバイスをキーボードのUSBポートに接続すると「電力不足です」って表示されるんですね。。。要はそれだったわけです。



まとめると以下の通りです。


8pinoは現在(2018/8/14)のmacOSArduino IDE(1.8.5)で問題なく動作します。ただし、USBケーブルは通信用ケーブル(充電用ケーブルは当然不可)である必要があり、MacのUSBポートがUSB3.0の場合は2.0に落とす仕組み(古いUSB Hubをかますなど)が必要です。8pinoの差し込むタイミングは微妙とも書かれた情報がありますが、Arduino IDEで書き込みボタンを押す前に接続すれば問題ないと思います。プログラム修正して再転送するときにはUSBケーブルを抜き差しする必要があります。どーしても転送できない場合は、私のようにUSBの電力不足が考えられます。USBハブでも電力供給のついたものを使えばもしかするとうまくいくかもしれません。ネットには古い情報がたくさんありますので、とりあえずPDFのリンクを参照すればいいと思います。

以上です。

プロトタイプ1・2

以下のつづき。

フルカラーシリアルLEDテープ(4m)で遊ぶ - memorandums

イベントはまだ先なんですが、早めに形にして次の仕事をしたいところで。

水・木・金と連続して作業しています。

難航していたテープLEDの作業は。。。あ、これは一昨日の作業なんですが。。。テープ状にするとデザインの自由度がないな。。。と思い、バラして配置できないかな。。。とポリウレタン銅線で結ぶ作業をしていました。

f:id:ke_takahashi:20180806125558j:plain

かなり苦労して6つくらいのLEDをつなげたのですが。。。少し力を入れると取れてしまう。。。取れてははんだ付けしてを繰り返していて。。。結局、諦めました。

翌日、回路を作り直してできたのが以下です。

youtu.be

digisparkでも駆動できることがわかり一安心でした。

テープLEDも1mでは長いので分割して4つのポートから独立して制御してみました。

この映像を関係者に見せたところ、子どもたちが描いた絵の背面から色をつけては?とのこと。さらに昨年も使ったボイスレコーダも合わせた方がいい、という意見をいただき。

今日、出勤して再チャレンジしました。

本番に使用する布が未発注とのことで、近い布を博多駅近くのダイソーで買ってきました。

f:id:ke_takahashi:20180810175516j:plain

この裏面にテープLEDを貼り付けます(本番ではホットボンドで接着しようと)。ボイスレコーダ(地元のエレキットさんの商品です)は昨年のもので余ったやつがあったのでそれを組み付けて。

回路は以下のような感じです。

f:id:ke_takahashi:20180810175634j:plain

ボイスレコーダの再生ボタンを横取りしてdigisparkにINPUTし、ボタンを押したら音声はもちろん、LEDのアニメーションを一定時間(音声が鳴っている間)、再生しようという試みです。

結果的には以下のようになりました。

youtu.be

youtu.be

LEDの光が強すぎて。。。前面の絵とマッチしていませんね。。。もっと「淡く」光って欲しいんじゃないかな。。。

関係者と打合せの上、さらに改良しないといけなさそうです。

とりあえず今日のところはここまで。

ダイソーの3LEDプッシュライトミニをボタンにしてみた

digisparkにプログラムを書き込むたびに抜き差しするのが面倒。

ダイソーにスイッチ付きのUSBコネクタがあるので使うと便利という情報を聞きつけたので、休みの日に近所のダイソー2軒回ってみたんですが。。。ありませんでした。

結局、USBコネクタはネットで購入したんですが。。。そのときに以下の商品に目が止まりまして。

f:id:ke_takahashi:20180806194100j:plain

これって音ゲーのボタンに使えるんじゃね?と思ったわけです。

実は、3年生のゼミで2チームにわかれて音ゲーを開発してもらっているんですね。そのため以下のようなホンモノ?のボタンを購入しまして。。。それでダイソーのライトの形状が似ているな。。。と思ったんでしょうね。

f:id:ke_takahashi:20180806194320j:plain

ちなみにこのホンモノのボタンは千石さんで売っているやつで定価で1400円もするんですね。。。耐久性なんかもあるんでしょうね。
www.sengoku.co.jp

で、本日、臨時試験2コマを終えてから、ちょこちょこっと分解してみました。

分解の細かいことは別にいいな。。。と思い写真は撮りませんでしたが、やったことは以下の2つです。

  • 内蔵のスイッチがトグル式だったのでスイッチを分解してワイヤーを1つ取り除いてプッシュボタンにしました。
  • この内蔵スイッチから2本の線を外部に引き出して、その線が閉じたらボタンが押されたこととして認識させます。

あとは以下のようなプログラムをちょこちょこっと書きました。載せるまでもないようなプログラムですが。。。とりあえず。

Arduino

int b1 = 0;
int b2 = 0;

const int b1_pno = 5;
const int b2_pno = 6;

void setup() {
  Serial.begin(9600);
  pinMode(b1_pno, INPUT_PULLUP);
  pinMode(b2_pno, INPUT_PULLUP);
}

void loop() {
  int b1_cur = digitalRead(b1_pno);
  int b2_cur = digitalRead(b2_pno);
  if (b1 == HIGH && b1_cur == LOW) {
    Serial.print(1);
  }
  if (b2 == HIGH && b2_cur == LOW) {
    Serial.print(2);
  }
  b1 = b1_cur;
  b2 = b2_cur;
  delay(100);
}

Processing

import ddf.minim.*;
import ddf.minim.analysis.*;
import ddf.minim.effects.*;
import ddf.minim.signals.*;
import ddf.minim.spi.*;
import ddf.minim.ugens.*;
import processing.serial.*;

Minim minim;
AudioPlayer b1, b2;
Serial myPort;

void setup() {
  fullScreen();
  minim = new Minim(this); 
  b1 = minim.loadFile("Cut04-1.mp3"); //音素材はhttp://musicisvfr.com/free/index.htmlから頂きました。ありがとうございます。
  b2 = minim.loadFile("Hit08-1.mp3");
  myPort = new Serial(this, "/dev/tty.wchusbserial1420", 9600);
  frameRate(10);
  noCursor();
}

int c = 0;

void draw() {
  int inByte = 0;
  if (myPort.available() > 0) {
    inByte = myPort.read();
    if (inByte == '1') {
      println("1");
      b1.rewind();
      b1.play();
      c = 5;
    }
    else if (inByte == '2') {
      println("2");
      b2.rewind();
      b2.play();
      c = 5;
    }
  }
  if (inByte == '1') 
    background(100, 255, 100);
  else if (inByte == '2') 
    background(255, 100, 100);

  if (--c <= 0) {
    c = 0;
    background(0);
  }
}

そんでできたのが以下のような感じです😁

youtu.be

なかなか壊れそうな音がしていますが。。。なんか使えそうな気がしませんか?