タグ

Arduinoに関するteppodoneのブックマーク (62)

  • Non-blocking control of stepper motors on Arduino

    teppodone
    teppodone 2019/06/05
    #てぽめも
  • How to pass parameters to timer interrupt callback methods

    teppodone
    teppodone 2019/05/07
    #てぽめも timerOneライブラリには引数付けて回せない
  • はじめに | 組込み、IoT開発のクローバーフィールド

    筆者が「C++と組み込み環境」(http://cppemb.blog17.fc2.com/)というブログを書き始めた数年前に比べると,組込み開発の現場でC++が利用されるケースがずいぶん増えてきました.特に大規模な開発でC++の利用機会が多いようです.今後もこの傾向は続くことでしょう.それにともない,Cの経験は豊富だけれども,C++はほとんど使ったことがないというエンジニアも,C++に触れる機会が多くなってきます. C++は非常に豊富な機能を備えたプログラム言語であり,一朝一夕にマスターできるものではありません.それでも,Cを使いこなせる経験者であれば,C++の機能の多くを使用することはあきらめ,Cの延長上にある導入しやすい機能だけを使った「より良いC」として,今日,明日にでもC++の便利さを享受することができます.しかしさらに,より良いCではなく,格的にC++を使いこなせるようになれば

  • Arduinoでスケッチのコンパイル時 undefined reference to `loop' などが出る場合の対処 : まごころせいじつ堂

    2月13 Arduinoでスケッチのコンパイル時 undefined reference to `loop' などが出る場合の対処 カテゴリ:Arduino 特にライブラリを作りながらスケッチも書いている場合、Arduino IDEでスケッチをコンパイルすると undefined reference to `setup' や undefined reference to `loop' が出てエラーになることがある。どうやらスケッチをスケッチとして認識せずC++ソースとみなしてコンパイルしているような動作。 以下は作業フォルダの例。 BYODというフォルダ以下に BYOD.ino (Arduino IDEスケッチ) BYOD.cpp (作成中のライブラリ) BYOD.h (同上) このような構成のときにエラーがでる。スケッチのファイル名はフォルダ名と同じでなければならないので、次のようにリネ

    teppodone
    teppodone 2019/04/27
    #てぽめも“特にライブラリを作りながらスケッチも書いている場合、Arduino IDEでスケッチをコンパイルするとundefined reference to `setup' や undefined reference to `loop' が出てエラーになることがある。”
  • Arduinoで"error: expected unqualified-id before numeric constant"が2個出たら、原因は後の方にある - Bye Bye Moore

    "error: expected unqualified-id before numeric constant"とかいうトンチキなエラーが2個連続で起きたら……エラーが指定されたトコではなく、全く例外の所に問題がある可能性があります。 実際のところ 実際に起きたエラーはこちら。 Controller:5: error: expected unqualified-id before numeric constant Controller:31: error: expected unqualified-id before numeric constantエラーは5行目、31行目とかなってます。 が、5行目はどうみてもただの変数定義。 31行目については関数と関数の間に「888」とか謎の文字列が追加されてました。 Arduino microで作ったUSB-Keyboradのデバッグ中に誤爆したよ

    Arduinoで"error: expected unqualified-id before numeric constant"が2個出たら、原因は後の方にある - Bye Bye Moore
    teppodone
    teppodone 2019/04/11
    #てぽめも
  • 定数の定義は,const intか,#defineか,それとも - わさっきhb

    メールが来ました.学内の先生からです.アルドゥイーノのスケッチのプログラミングで,定数を定義するのに,あるではconst intを使っており,また別のでは#defineを使っているのだけれど,夏休みのプログラミング教室で教える際には,どちらのほうが良いのか,とのこと.…… const int ledPin = 13; と #define ledPin 13 の違い,というわけですが,一般論としては,const intで書く方が,“Cらしい”と言っていいでしょう. ただし,もしこのledPinが,配列宣言時の要素数(int array[ledPin];)や,switch〜caseのラベル(case ledPin:)として出現する場合には,変数名だと都合が悪いので,#define を選ぶ必要があります.まあ,const intを使っているがあるということなので,こんな事例はないのでしょう

    定数の定義は,const intか,#defineか,それとも - わさっきhb
    teppodone
    teppodone 2018/11/24
    #てぽめも
  • 【Arduino自作ドローン】No.4 状態推定(姿勢角) | AkiRacing.com

    ドローン製作記のメインページ 【完全自作】Arduinoを使用した自作ドローンの製作記(完成) ドローンが飛ぶためには姿勢角を求めるセンサーが必須です.これは,ドローンの中でも非常に重要なパーツです. プロペラを均等に回せば飛ぶんじゃないかと思っている人もいますが,そんなことしたら1秒で墜落します.というより,離陸すらできないかも? そこで,ドローンの姿勢を正確に推定していく必要があります. ちなみに,今回はMPU9250という9軸センサを使用しました.使い方はこちらにまとめてあります. 【9軸センサ】MPU9250の使い方とArduinoプログラム ドローンの状態推定 まず,ドローンの状態推定をして,機体姿勢を推定するには,角速度センサ(ジャイロセンサ)と加速度センサの両方が必要になります. 理論上はジャイロセンサの値を積分することで,機体の姿勢は求まります.しかし,ジャイロセンサにはド

    【Arduino自作ドローン】No.4 状態推定(姿勢角) | AkiRacing.com
    teppodone
    teppodone 2018/11/13
    #てぽめも
  • サービス終了のお知らせ

    サービス終了のお知らせ いつもYahoo! JAPANのサービスをご利用いただき誠にありがとうございます。 お客様がアクセスされたサービスは日までにサービスを終了いたしました。 今後ともYahoo! JAPANのサービスをご愛顧くださいますよう、よろしくお願いいたします。

    teppodone
    teppodone 2018/05/28
    #てぽめも“Madgwickフィルターは「早い・簡単・高精度」!と三拍子揃った素晴らしい三次元姿勢推定フィルターですね”
  • Arduino日本語リファレンス

    Creative Commons Attribution-ShareAlike 3.0 License. このドキュメントはArduino Teamにより執筆され、Takumi Funadaが翻訳し、一部加筆修正したものです ご意見はtf at musashinodenpa.comまでお送りください [ドキュメント一覧]

    teppodone
    teppodone 2018/05/25
    #てぽめも“レジスタDDRは、ピンがINPUTかOUTPUTかを決定します。PORTレジスタはピンのHIGH/LOWを制御し、PINレジスタでINPUTピンの状態を読み取ります。”
  • 【備忘録】ESP-32 DevKitCでのWiFi接続方法(APモード) - ソースに絡まるエスカルゴ

    APモードのESP-32にWiFi接続する方法を残しておこうと思った次第です。 というのも、 esp8266で使っていたソースが流用できない。 サンプルにAPモードでの接続のものが見当たらない。 という状況だったので、まとめようと決意しました。 では以下に方法をまとめていきます。 ※一つ前の記事で環境構築が済んでいることが前提です。 ■ESP-32でAPモードでWiFiを起動するソース 結論から言うと、以下のソースでいけます。 ESP32_WiFi.ino #include <WiFi.h> WiFiServer server(80); const char ssid[] = "ESP32-WiFi"; // SSID const char pass[] = "esp32wifi"; // password const IPAddress ip(192, 168, 20, 2); // I

    【備忘録】ESP-32 DevKitCでのWiFi接続方法(APモード) - ソースに絡まるエスカルゴ
    teppodone
    teppodone 2018/02/28
    #てぽめも“上記のプログラムをESP-32 DevKitCに書き込むと、ESP32-WiFiというWiFiが飛ぶようになります。 それを選択し、passで設定したパスワードを入力すると接続完了です。”
  • Arduino IDE に Stable ( Staging )版 ESP8266 ボードをインストールする方法

    ここでは、日の電波法をクリアして、技術適合認証(技適マーク)を取得した、ESPRESSIF社の Wi-Fi マイコンボード ESP-WROOM-02 を Arduino IDE (統合開発環境) で開発するための ESP8266 ボードのインストール方法を説明します。 ESP-WROOM-02 は ESP8266 に技適マークが付いてパッケージ化されたものです。 Arduino UNO よりも計算速度が速く、Arduino MEGA よりもメモリが多く、3MB までのユーザーメモリを使用できて、しかも2.4GHzの無線LAN(Wi-Fi)で通信ができる、優れものボードです。 しかも、安い! その ESP-WROOM-02 を使うには、スイッチサイエンスさんの ESPr Developer ( ESP-WROOM-02 開発ボード ) をお勧めします。 USB-シリアル変換、電源レギュレー

    Arduino IDE に Stable ( Staging )版 ESP8266 ボードをインストールする方法
    teppodone
    teppodone 2018/02/12
    #てぽめも
  • Arduinoで倒立振り子ロボットBalboa 32U4を制御する(1) - Qiita

    はじめに PololuのArduino互換のロボットBalboa 32U4を動かすまでの記録です。Arduinoは初めてでいろいろ分からなかったので、その手順です。 準備・工作 スイッチサイエンスから購入しました。 https://www.switch-science.com/catalog/3243/ キット以外にもPololuのモーター2つ、タイヤ2つが最低限必要です。 Pololuからのドキュメントはこちら。 https://www.pololu.com/docs/0J70 組み立て方はドキュメントの4. Assembling the Balboa 32U4 kitからです。少し難く、5-6時間ぐらいかかりました。 注意点としては、モーターの極性を指示通りにつけること、アウトプットシャフトをボールベアリングに差し込むところがめちゃくちゃ固いこと、細かい部品(4極の磁気ディスクやネジな

    Arduinoで倒立振り子ロボットBalboa 32U4を制御する(1) - Qiita
  • Arduino IDE から、生の AVR にスケッチを書き込む方法(ArduinoIDE 1.6.4以降版。ArduinoをAVR ISPライターとして使う) - nomolkのブログ

    ※検索性向上のためタイトル変更しました(旧:Arduinoに慣れたら小さくて安くて最高な生AVRも使ってみてはいかがでしょうか) Arduinoに入ってるマイコンあるじゃないですか、あれがAVRです。逆にいうとAVRの周りにいろんな部品がついたのがArduinoです。 いろんな部品がついてるおかげでいろいろ便利になってるわけですが、普通にスイッチでLEDの制御するとかサーボ動かすだけとかの用途であれば、あのへんの部品はべつに要らないんですね。 なのでAVRだけで使いたいわけです。 上からArduino Uno、Arduino Nanoの互換品、AVRATmega88) Arduinoを買うと3000円くらいしますがAVRだけなら150~250円くらいで買えます。金額的にArduinoだと使い回し前提の使い方になりますが、AVRならマイコンごと基板にはんだ付けしちゃっても惜しくないです。

    Arduino IDE から、生の AVR にスケッチを書き込む方法(ArduinoIDE 1.6.4以降版。ArduinoをAVR ISPライターとして使う) - nomolkのブログ
    teppodone
    teppodone 2017/11/20
    #てぽめも ATmega328pをArduino化するやつ
  • Arduinoにおける配列=>数値への変換

    teppodone
    teppodone 2017/11/15
    char型の2進数 ex) "001001" を10進数に変換するときに #てぽめも“long n = strtol(hairetu, NULL, 16);”
  • Arduino上のString クラス関数を使う便利さと心配ごと: M2M/IoTシステム構築を簡単に!

    オープンソースハードウェアによって誰でも簡単に短時間且つ安価にM2M/IoTシステム構築が出来るノウハウを紹介。 Arduino上にStringクラス関数があることを知らない人は多いと思います。また良く知る人たちは、メモリリークのことを心配して使いたがらない人も多いと思います。 弊社では、3GIMのサンプルプログラムを作成したなかでは、ほとんど文字配列ではなく、Stringクラス関数を利用するようになりました。まわりからは、メモリリークが起きやすい、つまりメモリがどんどん増えて行ってプログラムが中断するなどと注意するようにと助言されました。 しかし現時点、多くのサンプルスケッチを作成しては、数か月も動かしているなかでは、特にメモリリークで困ったことはありません。 こんななかで、以下のサイトを発見しました。ただし、このサイトは、2009年に書かれたもので、メモリリークでの問題点を指摘し、改善

    Arduino上のString クラス関数を使う便利さと心配ごと: M2M/IoTシステム構築を簡単に!
    teppodone
    teppodone 2017/11/15
    Stringからcharに変換 #てぽめも“■文字列を文字配列に変換 char buf[100]; String str="abcdef"; int len=str.length(); // 文字列長さ str.toCharArray(buf,len); ”
  • DIPロータリースイッチの使い方 [Arduino]

    配線図 Arduinoで使用するデジタルピンが「1,2,4,8」ではなく「11,2,4,8」なのは後述します。 次は公式データシートより引用(42j.pdf) ※「C」がアノードコモン(アノード共通接続/Anode common) 次はスケッチの実行例です。 スケッチ(プログラム) 現在選択されているスイッチ番号の「2進化10進数」を表示します。左から42J02GBの「1,2,4,8」ピンです。 void setup() { Serial.begin(9600); pinMode(11,INPUT); pinMode(2,INPUT); pinMode(4,INPUT); pinMode(8,INPUT); } void loop() { Serial.print(digitalRead(11)); Serial.print(" "); Serial.print(digitalRead(2

    DIPロータリースイッチの使い方 [Arduino]
    teppodone
    teppodone 2017/11/14
    “どの「数字」または「英字」が押されているかは「2進化10進数」または「2進化16進数」で判断します。”#てぽめも
  • 2,000円以下で始める!Arduinoを使い赤外線パターンを解析する方法 – TONGARISM.COM

    前回紹介した、つまようじを使い隠し音声を鳴らす方法でも、全パターンの音声再生を試すことは可能ですが、TONGARISMではあくまで技術的に、シフトブレスから送信される赤外線パターンを解析します。 オシロスコープやロジックアナライザなどの機材があれば、時間を掛けずに簡単に解析することは可能です。ただし、これらの機材は高価なものであるため、技術力を以って極力お金を掛けずに解析する方法として、安価なArduino(アルデュイーノ)というワンボードマイコン(マイコンと入出力ピンを備えた1枚の基板)を使いました。 準備 使用機器 Arduino(アルデュイーノ) マイコンと入出力ピンを備えた基板です。写真はTONGARISMで使用したArduino Unoというモデルで、Amazonで3,240円で販売されています。海外から発送となる安価なモデルであれば、1,000円以下で販売されています。 赤外線

    2,000円以下で始める!Arduinoを使い赤外線パターンを解析する方法 – TONGARISM.COM
  • 必殺マイナーホビー Nサーボの製作記録

    今年はレグホーン10周年記念にして、私が一人で長年開発を続 けてきた自作サーボ(NAKAYANサーボ→Nサーボ)がようやく完成と 言える状態になった年でもあります。 ロボット仲間の方達には”造っている”という話題だけは出していたの ですが、なかなかお見せできず、もどかしい思いをさせてしまった方 もおられると思いますので、ここに約10年の孤軍奮闘の軌跡を簡単 にまとめておきます。 興味のある方はご覧下さい。 第1章「さっそく断念」 2007年の末、私の愛機レグホーンがデビューして戦績が上がって きたころ。 当時のレグホーンはJ社のサーボを使っており、そのギアボックスの 貧弱さやモーターの発熱に大変苦労しつつロボットを楽しんでおり ました。 他のみなさんがK社のサーボで余裕を持ってロボットを楽しんでいる 様子を見て、このサーボではやっていけないなと実感しました。 しかし私は以前から”人と違うモ

    必殺マイナーホビー Nサーボの製作記録
    teppodone
    teppodone 2017/03/03
    #てぽめも
  • 1年以上使用した「Nexus 5」のバッテリーを自分で交換してみました

    購入したばかりのNexus 5は、1日使いまくっても途中で充電が切れてしまうことはなかったものの、使用から1年以上が経過した現在ではバッテリーの消耗が激しく、使っていてもバッテリーの心配ばかりしてしまいます。使い続けるにはどうしたらいいか熟考した結果、バッテリーを新品に交換してみるしかなさそう、という結論に達したので、自分でバッテリーを交換してみました。 ※ユーザー自身が端末の修理・分解を行うとメーカー保証がなくなってしまったり、端末が故障したりする可能性もあるので、十分に注意してください。 1年以上使用したNexus 5。使用感に全く問題はなく、むしろずっと使い続けたいくらいなのですが、使用し続けるのに立ちはだかったのがバッテリー持ちの悪さです。 下記は平日におけるバッテリー残量を示したグラフで、7時から9時くらいまでグラフが急激に下降しているのがわかります。これは通勤時にNexus 5

    1年以上使用した「Nexus 5」のバッテリーを自分で交換してみました
    teppodone
    teppodone 2017/01/04
    #てぽめも
  • Fritzing用パーツ配布サイトまとめ - Life with IT

    2019/06/27更新 IoT開発や電子工作を行う上で回路図を視覚的に表すのにFritzingがとても便利ですが、世の中に流通している膨大な種類の部品を網羅するのには無理があるためパーツとして用意されていないものも多数あります。 パーツを自作する方法も用意されていますが非常に手間がかかるうえにデザイン力も必要となるためなかなか手が出ません。 しかし巷にはこのパーツを作って公開されているかたも大勢いらっしゃるのでまとめていきます。 尚、パーツはfzpz形式で配布されており、解凍せずにそのままFritzingの[ファイル] > [開く]で配布ファイルを指定すればMINEカテゴリにパーツが追加されます。 Fritzingのインストールはとても簡単ですが、以下で手順を説明しています。 関連資料・記事 いろいろ parts submit (fritzing Forum) AdaFruit Frit

    Fritzing用パーツ配布サイトまとめ - Life with IT