Subscribed unsubscribe Subscribe Subscribe

TI-Nspire / 微積分 / 臺形積分

.lua -- Trapezoidal Integration SUM = 1 -- initial value data = { -- f(x) = e^x, x = from 0 to 2, dx = 0.1 1, 1.105170918, 1.221402758, 1.349858808, 1.491824698, 1.648721271, 1.8221188, 2.013752707, 2.225540928, 2.459603111, 2.718281828, 3…

TI-Nspire & SensorTag / 重力加速度から傾きを求める / 3 軸を使う

Triple-Axis Tilt Calculation: Reference: http://www.analog.com/media/en/technical-documentation/application-notes/AN-1057.pdf (Analog Devices) .lua require "bleCentral" bleState = "" peripheralState = "" myPeripheral = nil peripheralName =…

TI-Nspire & SensorTag / 重力加速度から角度を求める / 2 軸を使う

The output of an accelerometer can be converted to an angle of inclination. In this note, a Dual-Axis approach will be used to calculate an angle of inclination. .lua require "bleCentral" bleState = "" peripheralState = "" myPeripheral = n…

TI-Nspire & SensorTag / 重力加速度から傾きを求める / 1 軸だけ使う

The output of an accelerometer can be converted to an angle of inclination. In this note, a single axis will be used to calculate an angle of inclination. .lua require "bleCentral" bleState = "" peripheralState = "" myPeripheral = nil peri…

TI-Nspire & SensorTag / 9 軸センサーモジュール MPU9250 の値だけを取り出す

Reference: Scripting Tutorial - Lesson 36 Orientation of Axes (Source: https://www.invensense.com/wp-content/uploads/2015/02/PS-MPU-9250A-01-v1.1.pdf) Setting the Configuration UUID (Source: CC2650 SensorTag User's Guide - Texas Instrument…

TI-Nspire & SensorTag / 気象データの長時間測定をおこなう

Weather data have been obtained from a TI SensorTag every ten minutes. Measurement Period: December 2nd, 2016 10:00 PM - December 3rd, 2016 10:00 AM The time unit is minute. .tns 20161202-03_weatherData.tns - Google ドライブ

TI-Nspire & SensorTag / 気象関連のデータをリアルタイムにグラフ化する

The following Lua script will obtain weather data from TI SensorTag. Those data will be stored into the native applications of TI-Nspire by the var.storeAt() function. The Graphs application can plot them as a scatter plot in real-time. .l…

TI-Nspire & Lua / タイマーの tick するたびに経過時間を出力する / グローバル変数に頼らない / コルーチンを使ってみる

Every time a timer ticks, the following script will return the elapsed time. As a trial, a co-routine has been used. .lua function elapsedTime() local initTime = timer.getMilliSecCounter() for i = 1, math.huge do coroutine.yield((timer.get…

TI-Nspire & SensorTag / 気象関連のデータを全部一度に取り出す

The following script will try to extract weather data from CC2650 SensorTag. .lua require "bleCentral" local bleState = "" local peripheralState = "" local myPeripheral = nil local peripheralName = "" -- Temperature TMP007 = { name = "TMP0…

TI-Nspire & SensorTag / 照度センサー OPT3001 の値だけを取り出す

(photo: http://www.ti.com/ww/en/wireless_connectivity/sensortag2015/tearDown.html) .lua -- Refere to http://compasstech.com.au/TNS_Authoring/Scripting/script_tut35.html. require "bleCentral" local bleState = "" local peripheralState = "" l…

TI-Nspire & SensorTag / 大気圧センサー BMP280 の値だけを取り出す

(photo: http://www.ti.com/ww/en/wireless_connectivity/sensortag2015/tearDown.html) .lua -- Refere to http://compasstech.com.au/TNS_Authoring/Scripting/script_tut35.html. require "bleCentral" local bleState = "" local peripheralState = "" l…

TI-Nspire & SensorTag / 湿度センサー HDC1000 の値だけを取り出す

(photo: http://www.ti.com/ww/en/wireless_connectivity/sensortag2015/tearDown.html) .lua -- Refere to http://compasstech.com.au/TNS_Authoring/Scripting/script_tut35.html. require "bleCentral" local bleState = "" local peripheralState = "" l…

TI-Nspire & SensorTag / 温度センサー TMP007 の値だけを取り出す

(photo: http://www.ti.com/ww/en/wireless_connectivity/sensortag2015/tearDown.html) .lua -- Refere to http://compasstech.com.au/TNS_Authoring/Scripting/script_tut34.html. require "bleCentral" local bleState = "" local peripheralState = "" l…

BLE早わかり

非公式訳(原典: https://www.arduino.cc/en/Reference/CurieBLE) CurieBLEライブラリー Arduino/Genuino 101とCurieBLEライブラリーとを組み合わせると、BLEの機能が使えるようになって、スマートフォンやタブレットなどのデバイスを相手にデータのやり取…

TI-Nspire & SensorTag / ボタンの状態を受信する / シンプル版

The previous script has been rewritten with no decorations. The process flow is as follows: 1. The ble.addStateListener() registers a state listener. 2. The bleCentral.startScanning() gets a scanner to scan peripherals. 3. The connect() ge…

TI-Nspire & SensorTag / ボタンの状態を受信する / compasstech.com.au 版

The following script, from http://compasstech.com.au/TNS_Authoring/Scripting/script_tut31.html, will try to read the state of SensorTag's buttons. Do not press and hold any button for too long, or powering off or mode changing will occur. …

TI-Nspire & BLE / Tiny BLE-Connection-Listener / LaunchPad と Grove BLE

Some changes have been made to the previous script. .lua -- Tiny BLE-Connection-Listener for TI-Nspire -- Tap the right half of the screen to start scanning to connect. -- Tap the left half of the screen to disconnect. -- You can view UUID…

TI-Nspire & BLE / Tiny BLE-Connection-Listener / Genuino 101 と SensorTag

Some changes have been made to the previous script. .lua -- Tiny BLE-Connection-Listener for TI-Nspire -- Tap the right half of the screen to start scanning to connect. -- Tap the left half of the screen to disconnect. -- You can view UUID…

TI-Nspire & BLE / Tiny BLE-Connection-Listener / SensorTag

The connection flow is as follows: The ble.addStateListener() function registers a listener-callback. The bleCentral.startScanning() function gets a scanner-callback to scan peripherals. The connect() function gets a connector-callback to …

TI-Nspire & BLE / SimpleLink SensorTag をつなぐ

The following script, which is from http://compasstech.com.au/TNS_Authoring/Scripting/script_tut30.html, will try to establish a connection with BLE devices. .lua -- Source: http://compasstech.com.au/TNS_Authoring/Scripting/script_tut30.ht…

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

Nspired-Lua hands off the received data to the Nspire's native applications by using var.store(). .ino #include <Adafruit_BME280.h> boolean gotInitData = false; unsigned long initTime; Adafruit_BME280 bme; void setup() { Serial.begin(115200); bme.begin(); } </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 long breadboard. .ino #include <Servo.h> #define ultraPin 7 #define servoPin 9 int deg = 0; class Ultrasonic { public: Ultrasonic(int pin); void DistanceMeasure(void); float microseconds</servo.h>…

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

An ultrasonic module mounted on a servo horn acts just like a radar or a sonar. Leo transmits data to TI-Nspire in the format of a space-delimited string, "range△degree". Drawing residual images makes the display appear to be a radar. .ino…

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

TI-Nspire receives range data from a Leo who has opened a serial port, and shows them on its screen. .ino class Ultrasonic { public: Ultrasonic(int pin); void DistanceMeasure(void); float microsecondsToCentimeters(void); private: int _pin;…

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…

メタメソッドで四則演算子をオーバーロードする

.lua -- How to use metamethods in Lua. list1 = {1, 2, 3} list2 = {5, 7, 9} function myAdd(listA, listB) local listSute = {} for i = 1, #listA do listSute[i] = listA[i] + listB[i] end return listSute end function mySub(listA, listB) local l…

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

If Leonardo uses &ltKeyboard.h> in order to transmit data, TI-Nspire can receive the data from him by using the on.charIn() instead of by opening a serial port. .ino #include <Servo.h> #include <Keyboard.h> #define sigPin 9 #define swPin 12 Servo myservo; int </keyboard.h></servo.h>…

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

シリアルポートは開かずに Keyboard ライブラリーを使って Leonardo からテキストを取り込む。 Lists & Spreadsheet アプリケーションに取り込んで、Graphs アプリケーションでグラフ化してみる。キーボードから入力するのと同じことなので Word でも Excel …

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 へ送る

確認の手段として、Arduino 側で全文字をつなぎ合わせて TI-Nspire へ返す。 .ino String inString = ""; void setup() { Serial.begin(115200); } void loop() { while(Serial.available()) { char c = Serial.read(); if(c != '\n') { inString += c; // …

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

TI-Nspire のキーボードから任意の 1 文字を Arduino へ送る。 本当に送れたのか確認する手段として、Arduino で何かをしてその処理結果を TI-Nspire へ返す。 .ino void setup() { Serial.begin(115200); } void loop() { while(Serial.available()) { char…

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 から持ってきた。理窟はわか…

スイングバイ

加速スイングバイ: 減速スイングバイ: require "physics" require "color" ----------------------- -- general functions -- ----------------------- function pV(x, y) return physics.Vect(x, y) end function sum(list) local result = ZERO for _, v i…

軌跡が描けるようにする。

-- 軌跡が描けるようにする。 -- オブジェクトごとに座標履歴を self として持っておく。 require "physics" require "color" ----------------------- -- general functions -- ----------------------- function pV(x, y) return physics.Vect(x, y) end f…

elements-across format

引用元: https://www.perkinelmer.com/lab-solutions/resources/docs/BRO_Optima7300VFamily.pdf 各元素を横並びにした表形式のこと。

24-Value series decade

The standard resistance values are from the 24-Value series decade as specified in Military Standard MS90178. 引用元: https://www.cdiweb.com/datasheets/ge_thermometrics/b35_43.pdf いわゆる “E24 系列” のこと。“series” は “数列” “級数” “系列…