memorandums

日々のメモです。

Smart Laser CO2 加工途中に止まる or 暴走 → とりあえず安定した

昨夜、アクリル板をカットしなければならなくなり、ひさしぶりにレーザーカッターを稼働させました。

カットスタートすると、なぜか途中で加工が止まってしまいます。

以前にも同様のことがあったのでノイズだと思いました。USBケーブルを変えたり、FABOOL Desktopを前のバージョンに戻したり、配線を整理したりしましたが状況変わらず。

レーザーが出力された状態で加工が止まったり😨、途中で全く違うパスを切断しだしたり。。。😨

様々な助言があったので試してみましたが効果はありませんでした。

FABOOL laser co2 途中で止まる対策に、FANを止めると効果あります。 | CO2レーザー使用記録

FABOOL絶不調 | きっと何かに役立つでしょ!?

終電まで粘ったのですが、状況変わらずで諦めて帰宅しました。


本日、再チャレンジ。

以前、基板をアップデートしたときに同様の現象が発生してsmartdiysさんとメールでやりとりしたことがあったのを思いました。以下のような感じです。研究室の壁コンセントが2Pなのでアースが浮いた状態(変換器を使用)になっているんですよね。。。これが諸悪の根源と思います。これは来年度、工事申請を出したいな。。。と思っていますが。

アップデートキット用のコントロール基盤にはアース線が付属しておりますのでFABOOL Laser CO2ですが下記マニュアルを参考にアルミフレームに取り付けてください。
https://www.smartdiys.com/manual/fabool-laser-co2-cooling-system-mount-2/

一点ご確認をお願い致します。
・ACケーブルは3Pで接続し、アースも落としていますでしょうか。

ノイズ対策用のアース線とフェライトコアをお送りしますので、
お手数をおかけいたしますがお届け先詳細をご教示頂けますでしょうか。

とりあえず、フェライトコアの位置を確認しましたが問題ないようです。

レーザーカッターを自作している人でノイズ対策がないかぐぐりましたがなかなか見つからない。そんなところに以下を見つけました。

レーザー加工機(Smart Laser CO2)買いました

この中に以下の文がありました。

Q.冷却装置のラジエータがビリビリします

A.通常はビリビリ来ませんが、何が悪かったのか一時的にこのような症状が出たことがあります。レーザー照射時にレーザー管の電気が水を伝ってきていると思います。冷却装置と接続しているホースに金属製のカプラ等を取り付けた場合も同じく照射時にはカプラがビリビリしますので感電に注意してください。ちなみにアースには接続しない方がいいと思います。

なるほど。。。です。

納品当初に冷却キットに触るとビリっと来ていてなんだろうな。。。と思っていたのを思い出しました。この対策として、冷却キットからアース線を伸ばしレーザーカッターのフレームにネジ止めしていました。アースには接続しない方がいいということで以下の対策をしました。

  • 水冷キットのアース線を外した
  • 水冷キットの電源をレーザーカッターの電源とは別なところから取るようにした
  • 水冷キットをレーザーカッター本体から離しておいた(ホースにも帯電するとのことなので本体となるべく接触しないようにした)

f:id:ke_takahashi:20190117112641j:plain

さらに、レーザー管から生えている電極線2本をレーザー管の電源よりに集めるように配線しました。ちょっとわかりにくいと思いますが。。。

f:id:ke_takahashi:20190117115956j:plain

この対策をすることで、切断中に止まることがなくなりました。

ちなみに、出力は50%以上は上げていません。

アクリル板の予備がなかったため、失敗するわけにはいかず、とりあえず50%でゆっくり切断しました。

まずは、ACアースをつけるため壁コンセントの3極化をしないとですね。。。これは業者さんにお願いしなければなりません。来年度だなぁ。。。

目的と目標

何気なく使ってきた言葉がそもそも正しいのか。。。疑問を持つことが多々あります。お恥ずかしながら。

母語というのはそういうものなんでしょうね。。。音と状況で覚えて何となく使っているうちに自分の言葉になっていく。でも、本来の意味は何か?他の言葉との意味の違いは何か?などと問われると困ることしかりなわけで。

3連休、家で仕事をしていて、ふと、目的と目標の違いって。。。と気になりました。この言葉は仕事でもよく使う言葉ですが、違いは何かと考えるとズバっと答えられない。ググってみるとあるあるのようで。様々な解説が散見されます。

多くの記事がビジネス関連でしたが、どれもこれも「こういうものだ」と書かれているだけで、どれを見てもわかるようなわからないようで私は腑に落ちませんでした。そんな理解ではすぐに忘れてしまいます。もっとクリアな説明が欲しい。

一番わかりやすかったのがWikipedia(というか広辞苑、さすが)。

目的 - Wikipedia

違いは以下との解説があります。広辞苑よりだそうです。手元に広辞苑がないので。。。助かります。

目的は「成し遂げようとすることがら」で、目標のほうは(その)目的を達成するために設けためあてのことである。

別の言葉で置き換えると、目的はゴールであり、目標はゴールを実現するために達成すべき事柄(つまりマイルストーン)とも思います。

ただ、和英辞書でひいてみると、目的にも目標にもgoalの対訳が含まれます。英語の世界ではgoalだけでは著者あるいは話者の意図が決定できないわけです。 要注意です。

さて、こう調べたことも1週間後には忘れているでしょう。

目的はなぜ目的なのか?目標はなぜ目標なのか?語源を調べてみたかったのですが。。。語源辞典がともとにないのでアウト。今度、図書館かどこかで調べてみましょう。

目標は「め・じるし」とも読めます。

「しるし」といえば「標識」

交通標識は「どこかへ旅行するときに見かける中間地点までの方向を表すもの」と考えると、目的より目標の方が小さいゴールであることが覚えられそうです。

でもね。。。中間目標っていう言葉もあって、文脈上、「目標」がゴールを意味するするときもありますしね。。。

日本語(というか言葉)って難しい。

というより、定義はそこそこあったとしても、言葉の解釈は人によって異なる可能性が高いということであって、発信側はそういうことがあることを頭にいれて書いたほうがいいな、というところが落とし所かと思います。

みなさん、今年の目標は決めましたか?😁

Kindle Fire HD 8買った

正月明けにいつも聴いているポッドキャスト(backspace.fm)を聴いていて、松尾さんがKindle Fire 8を買ったと仰っていました。軽い。安い。とのこと。

そこで購買欲がピクッと。

Amazonのページを見ると8K円。安っ!

重さを見ると369g。私のスマホの2台分。軽いかなぁ。。。Kindleよりは重いけど。。。

そこで思い出したのが、以前、Kindle Fireを買ったことがあったっけと。興味本位で買ってみたんですね。

memorandums.hatenablog.com

Kindleとしては使わなくてROOT化などして遊んでいた記憶があります。

memorandums.hatenablog.com

これ使えないかな。。。と思って久しぶりに起動して初期化してみると。。。なんとAmazon.comしか使えないんですね。忘れてました。

そこで諦めて金曜日にポチりました。行き帰りの電車等で読書と動画視聴に使いたいな、と。

今朝、到着したので早速開封してみました。

驚いたのがAmazonのアカウントが設定済みだったことですね。あとはふつうのタブレットと同様です。

スマホでもそうだと思いますが、IDとパスワードを入力して端末とアカウントを紐つける作業が必要なはずですがこれは不要でした。

重さはまあまあ。Kindleと比べると「軽くはないです」が、少なくとも初代よりは軽い感じではありました。

で、このあとに以下の勝間さんのエントリーを読んで知ってしまったのですが。。。Fire HDにも読み上げ機能がついているそうで。。。

Kindle本の読み上げ比較。なぜ、結局、読み上げは、Kindle Fire HDの第7世代になったのか - 勝間和代が徹底的にマニアックな話をアップするブログ

ついさきほど書いた以下のエントリーのように、iOSKindle本を読み上げようと思ったのですが。。。Fire HDでできるならiOSを使わなくてもよかった。。。というオチが。ただ、勝間さんも書かれているようにFire HD 8はスマホと比べると重い(倍くらい)です。なので読み上げ端末としてだけ考えるとiPhone6という選択は悪くはないように思います。持ち歩く端末数が増えますが。。。

iPhone6修理ふたたび - memorandums

余暇や移動中はFire HDを、移動中はポッドキャストiPhoneKindle読み上げを、という感じになります。しばらく試してみたいと思います。

ますますAmazonに依存していく私です。。。

あ、ちなみにケースもあわせて買ったんですがケチって以下のにしました。

これ失敗でした。。。何が悪いかというと端末を保護する目的としては十分なんです。ただ、スタンドとして利用しようとすると横のみ対応で、しかも設置しにくい。。。公式のケースは縦でもスタンド代わりになります。しばらく我慢して使って汚れたら公式のやつを買おうかと思います。

Amazon Fire HD 8 (第7世代、第8世代) 用カバー マリンブルー

Amazon Fire HD 8 (第7世代、第8世代) 用カバー マリンブルー

iPhone6修理ふたたび

勝間さんのブログで「Kindleの読み上げ機能を利用すると読書が捗る」ということを知って調べてみるとiOSの話らしい。

Androidトークバックという機能で類似したことはできるらしいので実際にやってみると。。。使い物にならない。一世代前のTTSという感じです。iOSすげということで。

そこで、手元に使っていないiPhone6(画面割れ)があることを思い出しました。

Amazonで修理キットをググって安いやつを2日ほど前にポチりました。

さきほど到着したので、早速修理しました。

これまで画面割れやバッテリー交換で分解・修理したことは何度もあったので作業自体はスムーズでした。画面交換は、ホームボタンとカメラの移植がちょっと面倒ですね。。。最近のiPhoneはもうできないんでしょうけど。

f:id:ke_takahashi:20190113122116j:plain

とりあえずKindle読み上げ専用端末のできあがりです。

これは後から知ったのですが、この読み上げ機能はKindle固有ではなくてiOSの機能なので、他のアプリでも使えます。当然ですが。。。

ascii.jp

いろいろと試してみたのですが、Google Play Booksももちろんできました。また、Mendeleyで論文も読み上げてくれました。

Kindleだけなのかもしれませんが、この機能の凄いところは、いったん開始するとページめくりも自動でしてくれるんですね。。。使わない手はありません。

移動中とか本を読めない場合に、イヤホンで本を「読む」。すばらしい!

Processingでアニメーション不要のアプリを作るときには更新フラグを使うとCPU負荷が下げられます

研究用のツールとかプロトタイプを作るときに身近なのでProcessingをよく利用しています。

Processing.org

Processingは、frameRate()で指定された時間間隔(デフォルトは60FPS)で、描画内容が記述されたdrawメソッドを呼び出します。

したがって、描画内容を変更していても(していなくても)、drawメソッドがコールされるため、当然、パソコンに負荷がかかります。

最近のパソコンは速いので、気にすることは無いかも知れませんが、描画内容が複雑になるとCPUが頑張りだし、私のMBAの場合はファン音がうるさくなります。。。

私が作る研究用ツールの多くはアニメーションは不要(ユーザの入力に対して結果を描画したら次の入力まで描画内容が変化しない)ので、入力がないときはdrawを実行する必要がありません。

以下、そんな場合の対策の話です。

対策は簡単です。入力があったときだけdraw(の内容を)を実行するようにします。

知っている人にすれば「なーんだ」という感じでしょうけど、とりあえず活動メモとして書きますね。

例で説明します。例えば、以下ような画像を全画面表示するプログラムを実行します。

PImage img;

void setup() {
  fullScreen();
  img = loadImage("a.png");
}

void draw() {
  image(img, 0, 0);
}

私のPCでは、上記のプログラムのインスタンスのCPU使用率は約70%になりました。

このプログラムに、「入力があったときだけ」という条件をつけます。このフラグをつけることで、CPU使用率は10%くらいになりました。

PImage img;

boolean needToUpdate = true;   //フラグ

void setup() {
  fullScreen();
  img = loadImage("a.png");
}

void draw() {
  if (!needToUpdate) return;  //フラグがtrueのときのみ、imageを実行する
  
  image(img, 0, 0);

  needToUpdate = false;  //image実行したらフラグを落とす。
}

void keyPressed() {
  needToUpdate = true;  //キーが押されたのでフラグを立てる(ユーザ入力の例)
}

さらに、キー入力は1秒に数回くらいしか押さないと考えた場合、frameRateを下げることでCPU負荷を下げることが期待できます。以下のように、frameRate(5)と指定するとCPU使用率は4%くらいになりました。

PImage img;

boolean needToUpdate = true;

void setup() {
  fullScreen();
  img = loadImage("a.png");
  frameRate(5); //★ここね
}

void draw() {
  if (!needToUpdate) return;
  
  image(img, 0, 0);

  needToUpdate = false;
}

void keyPressed() {
  needToUpdate = true;
}

富豪的プログラムならぬ節約生活プログラム?ですが。。。パソコンにやさしい・環境にやさしいプログラムを😁

初仕事

今日から初仕事です。正月明けてからずいぶん経ちましたが。。。

午前中に講義1コマ、午後に2コマ連続のプログラミング演習でした。

後期もあと1ヶ月です。来週から定期試験がスタートします。

そんな中、午前中の講義終わりに2年生の女子学生から「登記しましたよ」と。

何のことかわからなかったのでよく聞くと自分たちの会社を立ち上げたとか。

すんごいですね。。。今どきの学生さん・若い人は。僕が学生の頃には想像もしませんでした。

彼女らのモチベーションの高さは本当に感心します。さすが実学の○大といいたいところですが、これは教育の成果ではなく、彼女らの凄さなんですね。そこは履き違えないようにしないといけません。

夕方には、卒業生が企業説明に来ていて在学生を案内しました。あの子は就職して7,8年経っているような気が。。。他の研究室出身ですが、在学生らに話している姿は誇らしくも思いました。東証一部の会社に入ってばりばり技術者をやっている。素晴らしいです。

その後、研究室に戻り3年生のゼミ生の来週発表の資料チェックをしました。

今年の3年生のゼミでは「音ゲー」を作ることを目標としました。

ゲーム開発者を育成することでも有名な某大のゲーム筐体をみて、うちでもこういうの作らせたいな。。。とずいぶん前に思ったのを思い出してですね。。。もう6年前ですか。。。もっと前のような気がするけど。

青森が北海道をブチかます「アオモリズム」 - YouTube

これほどまでは完成度は高くはありませんが、ボタン制御、アニメーション、筐体設計・製作、音作りなど5人で分担して作りました。もう1チームありますが、そちらは飯塚の街並みを紹介する音ゲーを開発しました。

以下、彼らが試運転しているところを横からパチリ。

ProcessingとArduinoというお決まりの道具立てですが、課題レベルのプログラムしか作ったことがない、半田ごてを握ったこともない、いろいろな障害がありましたが、工房のスタッフの方に支えられながら完成させました。

サラリーマンSEから大学教員になって今年で15年目になります。様々なことに手を出して試行錯誤してきましたが、やっと教えるべきことが何か見えてきたような気がしています。

明日からまたがんばろうっと。

ApkMirrorからMi Fit 3.5.5をインストールした(人柱)

昨年末、迷いに迷ってAmazfitを購入し、以来、使い続けています。

いまさらながらAmazfitを購入 - memorandums

電池の持ちはさすがです。1週間くらいふつうに使い続けても残量は70%以上ある状態で、使っているこっちが心配になるくらいです。

主な用途としては、当然ながら「時計」と「通知」ですが、あとは、ランニングなどしたときのログ(距離、速度、歩幅、心拍数など)が記録できるので運動の励みになっています。

特に歩数計はいい刺激になっていて、時計を見るたびに「今日はまだ1万歩の半分も歩いていないや。。。」と気付かされて、エスカレータやエレベータより階段を利用するようになったり、気が向けばランニングしにいったりしてきました。いい感じです。

さて、本題です。

そんな、ほぼ快適なスマートウォッチなのですが、年末の公式アプリ(Mi Fit)の更新によって残念な感じになっていました。

残念な内容についてはGoogle Play Storeに皆様が書かれたレビューの通りです。

https://play.google.com/store/apps/details?id=com.xiaomi.hm.health&hl=ja

全く使い物にならないのか。。。というとそうでもないのですが、時計単体で設定ができないので不便でした。そのときに、ApkMirrorを知り、旧バージョン(3.5.5)を入れようかと思ったのですが、正月にメンテしてくれるんじゃないかな?と淡い期待をもって待つことにしました。

しかし。。。7日現在、メンテされる様子はありません。本土に比べて小規模な日本市場なんてそもそも相手にしていないのでしょう。

ちょっと時間があったので、ApkMirrorについて調べて旧バージョンを入れてみることにしました。野良APKをいれるのはなかなか勇気が入ります。人柱としてやってみました。

とはいえ、安全を確認できるものは確認したいので。以下、そのログです。

もし、真似て実行される場合は自己責任でお願いします。

Mi Fit 3.5.5のApkは以下にあります。

Mi Fit 3.5.5 (arm-v7a) (Android 4.4+) APK Download by Anhui Huami Information Technology Co.,Ltd. - APKMirror

「Verified safe to install (read more)」ってところをクリックすると一応、以下のハッシュ値が現れます。

f:id:ke_takahashi:20190107142845p:plain

ダウンロードしたAPKの本物性を調べてみました。keytoolというツールを使うようです。フィンガプリントは上記の画像と同様でした。

keytool -list -printcert -jarfile com.xiaomi.hm.health_3.5.5-6585_minAPI19\(armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
署名者番号1:

署名:

所有者: CN=wangpingjun, OU=hhcn, O=hhcn-app, L=hefei, ST=anhui, C=zh
発行者: CN=wangpingjun, OU=hhcn, O=hhcn-app, L=hefei, ST=anhui, C=zh
シリアル番号: 4dddcb5e
有効期間の開始日: Thu May 26 12:39:10 JST 2011終了日: Sat May 02 12:39:10 JST 2111
証明書のフィンガプリント:
     MD5:  34:EF:92:B3:6A:B6:FE:FF:6E:6E:9D:EC:48:0A:2B:8D
     SHA1: A6:E2:21:D7:7C:B6:76:0D:46:75:CF:AA:3E:DA:87:17:9D:13:7F:92
     SHA256: B1:45:A7:CB:36:4E:81:25:92:11:5E:FC:B1:E3:A8:BC:7B:56:45:C5:70:49:3C:B9:0A:07:5C:35:93:DC:2A:CB
     署名アルゴリズム名: SHA1withRSA
     バージョン: 3

ファイル自体のハッシュ値も調べてみました。いずれも上記の画像と同じ値のようです。目視判定ですので。。。

md5 com.xiaomi.hm.health_3.5.5-6585_minAPI19\(armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
MD5 (com.xiaomi.hm.health_3.5.5-6585_minAPI19(armeabi-v7a)(nodpi)_apkmirror.com.apk) = 665d7c84f1832d079bc0a902c36e6492

shasum -a 1 com.xiaomi.hm.health_3.5.5-6585_minAPI19\(armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
e43bd4b8e0f55e01407191fc79b6544b342925e5  com.xiaomi.hm.health_3.5.5-6585_minAPI19(armeabi-v7a)(nodpi)_apkmirror.com.apk

shasum -a 256 com.xiaomi.hm.health_3.5.5-6585_minAPI19\(armeabi-v7a\)\(nodpi\)_apkmirror.com.apk
8864fd1434522055f48a0df3ba7c3ed56ecf84ffd5502863d867835df392d0a0  com.xiaomi.hm.health_3.5.5-6585_minAPI19(armeabi-v7a)(nodpi)_apkmirror.com.apk

ついでにAPKのウィルスチェックをしてくれるサイトがあったので、URLおよびAPKファイル自体についてチェックしてみました。結果はいずれも問題ないとのことでした。

VirusTotal - ウイルス、マルウェア、URL の無料オンライン スキャナー

ということで、スマホから現バージョン(3.5.6)をアンインストし、ダウンロードしたAPKファイルをスマホに転送してインストールしました。

設定メニューは復活し、文字盤のダウンロードのメニューも表示されるようになりました。

気持ち悪いことは間違いないので。。。早く修正版をリリースして欲しいな。。。と思います。