Deutsch

RobotC 26.10.2024

195  
uscheswoi_82 коренной житель26.10.24 21:20
uscheswoi_82
26.10.24 21:20 

Всем привет!

У меня есть большой китайский набор электроники, а точнее клон итальянского Arduino UNO. Сам набор Arduino UNO у меня тоже есть, но там мало электродеталий, и он воляется где-то в подвале. Этот набор тоже лежал в подвале, но недавно я его принёс домой. В колледже мы программировали робота Lego на американской программе RobotC.


Так выглядет китайский набор электроники якобы совместимый с итальянским Arduino, и там очень много радиодеталей:






После установки RobotC появятся иконки на рабочем столе:



А вот так выглядет американская среда разработки RobotC:


В настройках нужно выбрать Arduino UNO:



А вот новый файл NewFile_Template001.c, можно начать программировать:


Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#1 
uscheswoi_82 коренной житель26.10.24 21:57
uscheswoi_82
NEW 26.10.24 21:57 
в ответ uscheswoi_82 26.10.24 21:20

Чуть попозже продолжим разговор про RobotC. Только что поел вот такой салат с соусом дрессинг. Это айсберг салат.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#2 
uscheswoi_82 коренной житель04.11.24 06:45
uscheswoi_82
NEW 04.11.24 06:45 
в ответ uscheswoi_82 26.10.24 21:57

Продолжим, у всех одноплатников есть на плате лампочка, спомощью которой можно поморгать. Лампочка у Arduno UNO вроде бы находится на 13-м pin-е. см. https://otvet.mail.ru/question/240423198

1. Короче нужно в меню Robot выбрать Motors and Sensors Setup см.:


2. Возможно в 13-м порту/пине нужно выбрать LED to Vcc см.:


3. В результате получится что-то типа такого, т.е. после настройки сгенерируется такой код:

#pragma config(CircuitBoardType, typeCktBoardUNO)
#pragma config(Sensor, dgtl13, ,               sensorLEDtoVCC)
//*!!Code automatically generated by 'ROBOTC' configuration wizard               !!*//


4. А чтобы записать в порт, нужно так программировать:

SensorValue[dgtl13] = число;

// Ну пусть будет 1 см.:
SensorValue[dgtl13] = 1;


5. Вот полный код, но я его ещё не тестировал:

#pragma config(CircuitBoardType, typeCktBoardUNO)
#pragma config(Sensor, dgtl13, ,               sensorLEDtoVCC)
//*!!Code automatically generated by 'ROBOTC' configuration wizard               !!*//

task main() {
  SensorValue[dgtl13] = 1;
}
Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#3 
uscheswoi_82 коренной житель04.11.24 06:50
uscheswoi_82
NEW 04.11.24 06:50 
в ответ uscheswoi_82 04.11.24 06:45

В Arduino IDE вроде бы вместо #pragma config(Sensor, dgtl13, , sensorLEDtoVCC) нужно писать void setup() { pinMode(LED_BUILTIN, OUTPUT); }, а вместо task main() { }, нужно писать void loop() { }

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#4 
uscheswoi_82 коренной житель04.11.24 06:53
uscheswoi_82
NEW 04.11.24 06:53 
в ответ uscheswoi_82 04.11.24 06:50

Так-же можно программировать китайца спомощью библиотек Johnny-Five на ЯП JavaScript см. https://johnny-five.io/, вот речь об Arduino Uno см. https://johnny-five.io/platform-support/#arduino-uno.

Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#5 
uscheswoi_82 коренной житель04.11.24 07:07
uscheswoi_82
NEW 04.11.24 07:07 
в ответ uscheswoi_82 04.11.24 06:53

Вот небольшой пример на JavaScript, чтобы помигать лампой:

var five = require("johnny-five");
var board = new five.Board();

board.on("ready", function() {
  var led = new five.Led(13);
  led.blink(500);
});
Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#6 
uscheswoi_82 коренной житель5 дней назад, 11:03
uscheswoi_82
NEW 5 дней назад, 11:03 
в ответ uscheswoi_82 04.11.24 07:07

Короче продолжим болтавню. Недавно фирма Eitech выпустила конструктор. Спомощью этого конструктора можно собрать модель машины, и управлять её спомощью App или самому программировать, вот статья см. https://www-faz-net.translate.goog/aktuell/technik-motor/t.... Единственное нужно купить отдельно ещё аккумулятор. Но меня жаба мучает, и место нет в квартире. Программист писал в этом форуме см. https://foren.germany.ru/haus/f/26080888.html#Post26080888.

Ага, Eitech - классная штука :) Только парню надо чтобы двигалось, а это уже надо докупать шестиренки, моторчики итд. Да и fischertechnik мне лично больше нравится :) Но принцип тот же - если моторчики, шестеренки итд не в наборе, то их можно (и нужно) купить отдельно. Но и цены на большие наборы опять таки от 80Евро.

Короче я думаю а может нужно в мой вот такой конструктор интегрировать одноплатник Arduino Uno:








Одноплатник клон Arduino UNO, Elegoo UNO:




У одноплатника есть отверствия, и я наверное смогу прикрутить плату к модели собраной из конструктора, отверствия я пометил красным кружочком:



Если я кому-то отвечаю, это не значит что я ему симпатизирую, каждый остаётся при своём мнение Дневник тяжелобольного инвалида
#7