MATLAB

MATLABでPIDコントローラをサクッと設計する

ロボットで何かをコントロールしようとした時に,はじめに候補に上がるのがPIDコントローラです. このコントローラを設計とは,Kp,Ki,Kdの3つの定数の調整になります. 学生がよく使うMatlabでは検索するとすぐに専用のページが出てき...
Arduino

M5stackでIMUを2個同時に使う

M5stack でIMUであるMPU9250を2つ使うプログラムを開発しました. 通信はI2Cを使っています. ベースはM5stack内のサンプルコードですが, ライブラリ内のMPU9250クラスはアドレスの変更に対応していなかったので,ク...
Electoronics

GROVE – IMU 9DOFのI2Cアドレスを変更する

Switch Science さんで販売されているGrove製のIMU,GROVE - IMU 9DOF(以下,Grove-IMUと呼称)のI2Cアドレスの変更方法のお話です. I2C通信では,各スレーブデバイスに固有のアドレスが決められ...
ROS

rosでのwebカメラストリーム

rosで遠隔操作ロボットを作りたくなり,やっぱカメラは必要だよね->ROS入ったUbuntuでしかカメラチェックできないのはめんどいなあ... となったので,ブラウザで確認できるように組みました. 元ネタはこちらですが,情報が断片的だっ...
Arduino

Arduinoでテンプレートクラスを使うときの注意

C++ では複数の型に対応した関数やクラスを作成するために, テンプレートクラスというtemplate <typename T>といったものが使えます. ArduinoもC++をベースとした言語になっていて, テンプレートクラス...
Mac

mac の移行メモ

先日新しいMacを購入し移行作業を行った時の手順のメモです. 前提として,アプリケーションとコマンドはbrewで管理しています. 大まかな流れとしては brew file でアプリケーション,コマンド周りのインストール mackup で...
Electoronics

Fritzing でイラレで作ったsvgを使う

ブレッドボードでの配線図を書く時に便利なのがFritzing です. Fritzing では, オリジナルの部品を作る時にsvgファイルで部品の形やアイコンを設定します. ただし, このsvgファイルはInkscapeでやるとうまく...
C/C++

Sublimetext に Uncrustify を導入する

ソースコードを整形してくれるUncrustifyをSublimetextに導入したので, そのやり方を残しておきます. 基本的には英語のテキストのそのままの内容です. 僕の場合はMacでしたが, Windowsの方も適宜読み替えて設定してく...
Fusion360

Fusion360でスケッチの面が選択できなかった時の対処方法.

Fusion360では, スケッチ上に描いたオレンジの面(閉じたパス)を選択して, 押し出しやスイーブを行います. しかし, 時々オレンジの面が消えてしまい選択できなくなってしまうことがあります. この解決方法は簡...
WebDesign

bootstrap のインプットボタンをわかりやすくする

bootstrapではチェックボックスやラジオボックスをボタンの形で扱うことができます. こうすることで, チェックボックスを並べたときにどこを押せばいいかわかりやすくなります. ところが, デフォルトのテーマ(色使い)のままだ...