Обсуждение:Basic: различия между версиями

Материал из Поле цифровой дидактики
 
(не показано 5 промежуточных версий этого же участника)
Строка 1: Строка 1:
<syntaxhighlight>
'''EXCEL-РОБОТ'''
//действующая программа "игруш." робота
 
#include <Wire.h>
Код для управления робота, который каждые 5 секунд заполняет новую строку ''Excel'' данными об освещённости и температуре.
#include <LiquidCrystal_I2C.h>
Для того, чтобы начать запись, необходимо запустить ''Excel'' и поставить курсор в ячейку А2.
#include <Servo.h>
Чтобы прекратить запись, необходимо еще раз нажать кнопку.  
#include <SoftwareSerial.h>
Для того, чтобы проверить как функционирует робот, его можно оставить работать на несколько минут. По записанным данным можно построить график и увидеть изменения данных в динамике
//библиотека для пульта
 
#include <IRremote.h>
<syntaxhighlight lang="JavaScript" line>
int RECV_PIN = A0;
var lightSensor = require('@amperka/light-sensor')
int BUTTON_PIN = A1;
.connect(A2);
IRrecv irrecv(RECV_PIN);
var thermometer = require('@amperka/thermometer')
IRsend irsend;
.connect(A4);
decode_results results;
var button = require('@amperka/button')
LiquidCrystal_I2C lcd(0x27,16,2);// set the LCD address to 0x27
.connect(P3);
//Создаем последовательный порт на пинах 13-чтение и 2-передача
var kb = require('@amperka/usb-keyboard');
SoftwareSerial BTSerial(2, 12); // RX, TX
var timer = require('@amperka/timer')
// Переменная для приема данных по Bluetooth
.create(5);
char bt_input;
button.on('press', function() {
//распиновка для серво
if (timer.isRunning()) {
Servo myservo; //create servo object to control a servo
timer.stop();
int potpin = 0; //analog pin used to connect the potentiometer
} else {
int val; // variable to read the value from the analog pin
timer.tick().run();
//задержка для поворота servo
}
int ser1=500;
});
//распиновка для датчика расстояния
timer.on('tick', function() {
int trigPin=11;//zelenyj provod
var time = getTime();
int echoPin=7;//zheltyj provod
var lx = lightSensor.read('lx');
int duration, cm, inches;
var c = thermometer.read('C');
//вращение двигателя с ускорением вперед левое колесо
kb.type(time.toFixed(0) + '\t' +
int in3=5;
lx.toFixed(0) + '\t' +
int in4=4;
c.toFixed(0) + '\n');
int enb=3;
});
//вращение двигателя с ускорением вперед правое колесо
 
int in1=9;
int in2=8;
int ena=10;
//задержка для двигателя
int dvig=200;
</syntaxhighlight>
</syntaxhighlight>

Текущая версия на 16:17, 24 декабря 2022

EXCEL-РОБОТ

Код для управления робота, который каждые 5 секунд заполняет новую строку Excel данными об освещённости и температуре. Для того, чтобы начать запись, необходимо запустить Excel и поставить курсор в ячейку А2. Чтобы прекратить запись, необходимо еще раз нажать кнопку. Для того, чтобы проверить как функционирует робот, его можно оставить работать на несколько минут. По записанным данным можно построить график и увидеть изменения данных в динамике

var lightSensor = require('@amperka/light-sensor')
 .connect(A2);
var thermometer = require('@amperka/thermometer')
 .connect(A4);
var button = require('@amperka/button')
 .connect(P3);
var kb = require('@amperka/usb-keyboard');
var timer = require('@amperka/timer')
 .create(5);
button.on('press', function() {
 if (timer.isRunning()) {
 timer.stop();
 } else {
 timer.tick().run();
 }
});
timer.on('tick', function() {
 var time = getTime();
 var lx = lightSensor.read('lx');
 var c = thermometer.read('C');
 kb.type(time.toFixed(0) + '\t' +
 lx.toFixed(0) + '\t' +
 c.toFixed(0) + '\n');
});