電子工作

TI-Nspire & 超音波モジュール / 高性能超音波距離計 LV-MaxSonar-EZ1 から出力される距離データ (ASCII コード) を TI-Nspire で直読する

関連: 高性能超音波距離計LV-MaxSonar-EZ1データシート(非公式和訳) - シャープ PC-G リンクを使って PC と PC-G850VS とでテキストをやり取りする - I²C および UART/RS-232C シリアルバスのトリガー・解析機能 - 高性能超音波距離計 LV-MaxSonar-EZ1 か…

高性能超音波距離計 LV-MaxSonar-EZ1 から出力される距離データ (ASCII コード) をターミナルで直読する

関連: 高性能超音波距離計LV-MaxSonar-EZ1データシート(非公式和訳) - シャープ PC-G リンクを使って PC と PC-G850VS とでテキストをやり取りする - I²C および UART/RS-232C シリアルバスのトリガー・解析機能 - 高性能超音波距離計 LV-MaxSonar-EZ1 か…

piduino の組立と動作確認

参考: トランジスタ技術 2017年 02 月号 duino (Arduino Uno 互換) を単体用として組み立てる。 部品を集める。基板は雑誌の附録である。 いきなり完成。USBシリアル変換アダプターにはスイッチサイエンスのオリジナル品を使った。 Grove - LCD RGB Backligh…

指先脈搏計 2 of 2 / 組立と測定

参考: ボクのArduino工作ノート 改訂版, pp.120-133 部品を集める。 いきなり完成。 オシロで血流波形を見てみる。 1.2527〔Hz〕なので脈搏数は 1.2527〔Hz〕× 60〔秒〕≈ 75〔BPM〕であった。血流が増えると電圧の下がる回路構成になっている。 ボクのArduin…

指先脈搏計 1 / プリント基板を外注する

参考: ボクのArduino工作ノート 改訂版, p.120-133 スイッチサイエンス経由で Fusion PCB に基板を外注してみる。 Fritzing でパターン図を作ってガーバーデータを出力する。 次の 9 個のファイルが出力される。 ~_pnp.txt ファイルは今回は不要なので削除…

TI-Nspire & Arduino / 温度・湿度・気圧計 4 of 4 / Graphs アプリケーションでグラフ化する

The Lua script below will use the var.store() function to store the received data in the Nspire's native applications. .ino #include <Adafruit_BME280.h> boolean gotInitData = false; unsigned long initTime; Adafruit_BME280 bme; void setup() { Serial.begin(115</adafruit_bme280.h>…

TI-Nspire & Arduino / 温度・湿度・気圧計 3 / サンプルスケッチを変える

When receiving 't' via a serial port, Leo transmits some data via the port in the format of a space-delimited string, "elapsedSeconds△Celsius△humidity△hectopascal". #include <Adafruit_BME280.h> boolean gotInitData = false; unsigned long initTime; float elaps</adafruit_bme280.h>…

TI-Nspire & Arduino / 温度・湿度・気圧計 2 / サンプルスケッチを試す

youtu.be The necessary libraries can be obtained from GitHub - adafruit/Adafruit_BME280_Library: Arduino Library for BME280 sensors and GitHub - adafruit/Adafruit_Sensor: Common sensor library. The following sketch assumes connection of th…

TI-Nspire & Arduino / 温度・湿度・気圧計 1 / モジュール同士を接続する

Bosch BME280 offers a choice of using I2C or SPI. In this example, I2C will be used. If an Adafruit BME280 breakout board can be bought in your location, a logic-level converter is not required.

TI-Nspire & Arduino、超音波距離計 4 of 4、超音波モジュールをサーボに載せて左右に振る(続き)

A Micro, a servo, and a battery pack can be put together on a longer breadboard. Micro is a brother of Leonardo. For more information about the servo used in this experiment, visit Ultra Sonic range measurement module - Sensor - Seeed Stud…

TI-Nspire & Arduino、超音波距離計 3、超音波モジュールをサーボに載せて左右に振る

An ultrasonic module mounted on a servo horn acts just like a radar or a sonar. Leo will transmit range and angle data to TI-Nspire in the format of a space-delimited string, "range△angle". Drawing residual images will make the display app…

TI-Nspire & Arduino、超音波距離計 2、シリアルポートを使って TI-Nspire の画面に距離を表示する

TI-Nspire will receive range data from a Leo who has opened a serial port, and will show those data on its screen. .ino class Ultrasonic { public: Ultrasonic(int pin); void DistanceMeasure(void); float microsecondsToCentimeters(void); priv…

TI-Nspire & Arduino、超音波距離計 1、サンプルスケッチを試す

The following sketch drives an Ultra Sonic range measurement module - Sensor - Seeed Studio to measure distances. .ino /***************************************************************************/ // Function: Measure the distance to obsta…

TI-Nspire & Arduino、サーボを使う 4 of 4、Keyboard ライブラリーを使って TI-Nspire で角度をモニタリングする(続き)

Leonardo will use the Keyboard.h library to transmit data to TI-Nspire. TI-Nspire can receive the data from him by using the on.charIn() function without opening a serial port. .ino #include <Servo.h> #include <Keyboard.h> #define sigPin 9 #define swPin 12 Ser</keyboard.h></servo.h>…

TI-Nspire & Arduino、サーボを使う 3、Keyboard ライブラリーを使って TI-Nspire で角度をモニタリングする

Leonardo sends angle data to TI-Nspire Student Software through a USB cable by using Keyboard library. TI-Nspire takes these data into Lists & Spreadsheet application, and shows them graphically. .ino #include <Servo.h> #include <Keyboard.h> #define sigPin 9 #</keyboard.h></servo.h>…

TI-Nspire & Arduino、サーボを使う 2、シリアルポートを使って TI-Nspire で角度をモニタリングする

Arduino 側では前回と同じことを実行するが、TI-Nspire で角度がモニタリングできるようにする。 .ino #include <Servo.h> #define sigPin 9 Servo myservo; int pos = 0; void setup() { Serial.begin(115200); myservo.attach(sigPin); } void loop() { while(pos <</servo.h>…

TI-Nspire & Arduino、サーボを使う 1、ひとまず Arduino だけで左右に廻す

サンプルスケッチをそのまま実行してみる。スイープの速度は、増分、減分、delay() で調整する。 .ino /* Sweep by BARRAGAN <http://barraganstudio.com> This example code is in the public domain. modified 8 Nov 2013 by Scott Fitzgerald http://www.arduino.cc/en/Tutorial/Swee</http://barraganstudio.com>…

TI-Nspire & Arduino、キーボードから任意の文字列を Arduino へ送る

TI-Nspire will send a string to a Leo. Then the Leo will send the received string back to TI-Nspire. .ino String inString = ""; void setup() { Serial.begin(115200); } void loop() { while(Serial.available()) { char c = Serial.read(); if(c !…

TI-Nspire & Arduino、キーボードから任意の 1 文字を Arduino へ送る

The script below will send a character from TI-Nspire to an Arduino over a serial port. Then the Arduino will convert the received character to a hex ASCII code, and send the code back to TI-Nspire. .ino void setup() { Serial.begin(115200)…

TI-Nspire & Arduino アナログ入力を使う 2 of 2、一定の周期でデータを読み取る

参考: ASI Connection Listener - ticalc.org ASI Temperature - ticalc.org 温度センサー LM35DZ を使う。 Enter キーで ASI を起動し、ASI の準備が整ったらすぐに初回データを読み取って timer をスタートさせ、そのあとは一定周期でデータを読み取る。 …

TI-Nspire & Arduino アナログ入力を使う 1、矢継ぎ早にデータを読み取る

参考: ASI Connection Listener - ticalc.org ASI Temperature - ticalc.org ポテンショメーターとして SoftPot を使う。とにかく矢継ぎ早にデータを読み取る。 画面の数字はアナログ入力電圧の AD 変換値(0 ~ 1023)。 .ino #define sensorPin 5 void set…

TI-Nspire & Arduino を利用した温度計 4 of 4、グラフ化する。

最後にグラフ化してみる。Graphs アプリケーションをそのまま使う。 var.store() コマンドで lua から nspire へデータを渡して scatter plot で描画する。 .ino #include <OneWire.h> #include <DallasTemperature.h> #define ONE_WIRE_BUS 10 OneWire oneWire(ONE_WIRE_BUS); DallasTempera</dallastemperature.h></onewire.h>…

TI-Nspire & Arduino を利用した温度計 3、温度センサーを複数接続する。

参考: Arduino+DS18B20で温度測定してみた - Qiita 今度は OneWire バスにセンサーを複数乗せる。電源はパラサイトパワーにはせず普通に供給する。 .ino #include <OneWire.h> #include <DallasTemperature.h> #define ONE_WIRE_BUS 10 OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sen</dallastemperature.h></onewire.h>…

TI-Nspire & Arduino を利用した温度計 2、少しコードを削る。

エラーは出ない、不安定にもならない、という前提で前回のコードを極力削った。 .ino #include <OneWire.h> #include <DallasTemperature.h> const int ONE_WIRE_BUS = 10; OneWire oneWire(ONE_WIRE_BUS); DallasTemperature sensors(&oneWire); void setup() { Serial.begin(115200); senso</dallastemperature.h></onewire.h>…

TI-Nspire & Arduino を利用した温度計 1、デモを再現する。

まず ASI Temperature - ticalc.org に紹介されているデモを再現してみる。 TI-Nspire はハンドヘルド、マイコンボードは Arduino Leonardo、温度センサーは DS18B20 を使う。 手順: 1. (Student Software しか使わない場合は 1. の作業は不要)C:\Program …

ASI 5 of 5, 接続要求を出す, port:connect(portConnector)

今度はハンドヘルドをホストにして MSP432P401R LaunchPad を接続してみる。怖いので TI-Nspire からは電源をとらない。 USB mini の OTG ケーブルはほとんどない: USB-133A・USB-142 | Ainex USB-133・USB-130 | Ainex -- Tiny ASI-Connection-Listener for…

ASI 4, ポートスキャンを開始する, asi.startScanning(portScanner)

require "asi" -- ステートリスナーを定義する。 function stateListener(state) if state == asi.ON then -- asi の準備が整ったらポートスキャナーにポートスキャンを開始させる。 asi.startScanning(portScanner) end end -- ポートスキャナーを定義する…

ASI 3, ステートリスナーを登録する, asi.addStateListener(stateListener)

-- ステートリスナーを登録する require "asi" -- nspire の asi の現在のステートを監視するステートリスナーを定義する。 -- 現在の asi のステート(on、starting、unsupported のいずれかの文字列)が nspire から渡される。 function stateListener(asi…

ASI 2, asi テーブルの中身を確認する

require "asi" for k, v in pairs(asi) do print(k, v) end BAUD_RATE_9600 9600 CONNECTED connected removeStateListener function: 30558068 UNSUPPORTED unsupported DISCONNECTING disconnecting INVALID invalid READ_TIMEOUT_DEFAULT 1000 CONNECTING…

ASI 1, TI-Nspire(Student Software)と Arduino とを接続してみる

バージョン 4.2(API 2.7)で Asynchronous Serial Interface が正式サポートされた。 Student Software と Arduino Duemilanove 328 とを接続してみる。コードは http://www.ticalc.org/archives/files/fileinfo/466/46657.html から持ってきた。理窟はわか…