Инструменты пользователя

Инструменты сайта


10i_2025_algo

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
10i_2025_algo [2025/03/13 15:53]
super_admin [Четвёртый этап]
10i_2025_algo [2025/10/07 14:22] (текущий)
super_admin [РОБОТ МФТИ]
Строка 59: Строка 59:
 ===== Четвёртый этап ===== ===== Четвёртый этап =====
  
-  * +  * [[https://​disk.yandex.ru/​d/​uEbF0xSYLLpxSQ]] материалы,​ задание
   * https://​school.mos.ru/​vrlabs/​electrodynamics/​app?​link=9frFsPHb5f8ag3Cdk0f5 - вирт. лаб. Эл. дин.   * https://​school.mos.ru/​vrlabs/​electrodynamics/​app?​link=9frFsPHb5f8ag3Cdk0f5 - вирт. лаб. Эл. дин.
   * https://​skysmart.ru/​articles/​physics/​parallelnoe-i-posledovatelnoe-soedinenie расчёт сопротивлений   * https://​skysmart.ru/​articles/​physics/​parallelnoe-i-posledovatelnoe-soedinenie расчёт сопротивлений
 +  * https://​forms.yandex.ru/​cloud/​67d428835056906066cbd6f4/​ - форма для отчёта о проделанной работе.
 +
 +===== Пятый этап =====
 +
 +  * https://​uchebnik.mos.ru/​material/​50a49afd-b7d0-4ecb-983c-daf55c4baed1?​sharing_key=5a69757f-6cf3-4d3c-ae8b-efdb42b36549 - пример частично собранного варианта
 +  * [[https://​uchebnik.mos.ru/​material/​cb7d71a7-d539-49af-a8d7-f186dace09bb?​menuReferrer=catalogue]] Виртуальная лаборатория:​ "​Теория вероятностей"​.
 +  * [[https://​uchebnik.mos.ru/​material/​cb7d71a7-d539-49af-a8d7-f186dace09bb]] Виртуальная лаборатория:​ "​Теория вероятностей"​.
 +  * [[https://​uchebnik.mos.ru/​material/​a78e5946-3746-441c-8645-42005d56b1f0]] Как пользоваться лабораторией «Теория вероятностей»
 +  * [[https://​uchebnik.mos.ru/​material/​684c4222-349f-47aa-a2c6-0e6dec8313bd]] Математический Конструктор ​
 +  * [[https://​uchebnik.mos.ru/​material/​684c4222-349f-47aa-a2c6-0e6dec8313bd?​menuReferrer=catalogue]] Математический Конструктор ​
 +  * [[https://​disk.yandex.ru/​d/​iNVgpsBiJqXEQQ]] КИБЕР-БОЙ ИТ 5 ЭТАП: ПРЕЗЕНТАЦИЯ,​ ЗАДАНИЕ,​ КРИТЕРИИ ОЦЕНКИ
 +  * [[https://​proproprogs.ru/​files/​balak_scool_tp.pdf]] - "​Теория вероятностей для школьников",​ Балакирев
 +  * [[https://​stepik.org/​course/​136024/​syllabus]] Добрая теория вероятностей (для ЕГЭ) с Сергеем Балакиревым
 +  * [[https://​stepik.org/​join-class/​f17c4c4039e87ea9a32a1e9bdeabd103b3d8c334]] - Задачи по теории вероятности для 10и: Добрая теория вероятностей (для ЕГЭ) с Сергеем Балакиревым
 +  * [[https://​intepra.ru/​oge/​bernoulli_distribution.html]] - теория
 +  * https://​uchebnik.mos.ru/​material/​b351783a-bb36-4200-96a0-5ea89bb67f23?​sharing_key=29483cc3-476b-4022-a606-736f3b0da041 результат
 +
 ==== Вспомогательные ресурсы:​ ==== ==== Вспомогательные ресурсы:​ ====
   * [[https://​wiki.amperka.ru/​%D0%BA%D0%BE%D0%BD%D1%81%D0%BF%D0%B5%D0%BA%D1%82-arduino:​%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5-%D0%B7%D0%B0%D0%BA%D0%BE%D0%BD%D1%8B-%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0 | Основные законы электричества]]   * [[https://​wiki.amperka.ru/​%D0%BA%D0%BE%D0%BD%D1%81%D0%BF%D0%B5%D0%BA%D1%82-arduino:​%D0%BE%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D1%8B%D0%B5-%D0%B7%D0%B0%D0%BA%D0%BE%D0%BD%D1%8B-%D1%8D%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%B8%D1%87%D0%B5%D1%81%D1%82%D0%B2%D0%B0 | Основные законы электричества]]
Строка 468: Строка 485:
 if __name__ == '​__main__':​ if __name__ == '​__main__':​
     run_tasks()     run_tasks()
 +</​code>​
 +
 +
 +<​code>​
 +
 +const int LM_s1 = 10; // левый мотор вход 1
 +const int LM_s2 = 9; // левый мотор вход 2
 +const int RM_s1 = 5; // правый мотор вход 1
 +const int RM_s2 = 6; // правый мотор вход 2
 +
 +int led_pin = 13;
 +// Укажем пины для подключения УЗ датчика
 +int trigPin = 12; 
 +int echoPin = 11;  ​
 +int s_for_obj = 0; 
 +// текущее состояние системы
 +int state = 0; // начальное состояние
 +
 +void setup(){
 + ​Serial.begin(9600);​
 + 
 + //​правый
 +    pinMode(RM_s1,​ OUTPUT);
 +    pinMode(RM_s2,​ OUTPUT);
 + //​левый
 +    pinMode(LM_s1,​ OUTPUT);
 +    pinMode(LM_s2,​ OUTPUT);
 +// УЗ
 +    pinMode(trigPin,​ OUTPUT); ​
 +    pinMode(echoPin,​ INPUT); ​
 +// светодиод
 +    pinMode(led_pin,​ OUTPUT);
 +
 +
 +
 +
 +}
 +
 +
 +int dist() // функция для вычисления расстояния
 +{
 +  int t,s; // локальные переменные время, расстояние
 +  // установить высокий уровень на пине Trig
 +  digitalWrite(trigPin,​ 1);
 +  // подождать 10 мс 
 +  delay(10/​16); ​
 +  digitalWrite(trigPin,​ 0); 
 +  // узнаем время
 +  t = pulseIn(echoPin,​ 1); 
 +  // вычисляем расстояние
 +  s = t * 0.034/​2; ​
 +  return (s);
 +}
 +
 +
 +
 +void loop() {
 +    s_for_obj = dist();
 +    //​Serial.println(s_for_obj );// вывод измеренного расстояния в окно сообщений
 +    //​delay(20/​16); ​
 +Serial.println(state);​
 +switch (state) {
 +  case 0: // начальное состояние:​ вперёд до первого препятствия
 +  case 2: // после первого поворота:​ вперёд до второго препятствия
 +    if (s_for_obj == 0 || s_for_obj > 50){
 +         ​moveForward();​
 +    } else {
 +         ​stopMotors();​
 +         state ++;
 +    }
 +    break;
 +
 +  case 1: // перед первым препятствием:​ левый поворот
 +  case 3: // перед вторым препятствием:​ левый поворот
 +    turnLeft();
 +    delay(2970/​16);​
 +    state ++;
 +    stopMotors();​
 +    break;
 +
 +  case 4: // после второго поворота:​ прямолинейный путь до остановки
 +    moveForward();​
 +    delay(8000/​16);​ // время прямолинейного движения до остановки
 +    state ++;
 +    stopMotors();​
 +    break;
 +
 +  case 5: // после остановки на площадке:​ включить светодиод на 4 секунды
 +    // ...
 +    break;
 +  default:
 +     ​stopMotors();​
 +  break;
 +}
 +
 +
 +
 +}
 +
 +void moveForward() {
 +     //​Serial.println("​up"​);​
 +    digitalWrite(LM_s1,​ 1);
 +    digitalWrite(LM_s2,​ 0);
 +    digitalWrite(RM_s1,​ 1);
 +    digitalWrite(RM_s2,​ 0);
 + ​delay(20);​
 +}
 +
 +void moveBackward() {
 +    //​Serial.println("​down"​);​
 +
 +    digitalWrite(LM_s1,​ 0);
 +    digitalWrite(LM_s2,​ 1);
 +    digitalWrite(RM_s1,​ 0);
 +    digitalWrite(RM_s2,​ 1);
 + ​delay(20);​
 +}
 +
 +void turnLeft() {
 +    digitalWrite(LM_s1,​ LOW);
 +    digitalWrite(LM_s2,​ HIGH);
 +    digitalWrite(RM_s1,​ HIGH);
 +   ​digitalWrite(RM_s2,​ LOW);
 + ​delay(20);​
 +}
 +
 +void turnRight() {
 +    digitalWrite(LM_s1,​ HIGH);
 +    digitalWrite(LM_s2,​ LOW);
 +    digitalWrite(RM_s1,​ LOW);
 +   ​digitalWrite(RM_s2,​ HIGH);
 + ​delay(20);​
 +}
 +
 +void stopMotors() {
 +    digitalWrite(LM_s1,​ LOW);
 +    digitalWrite(LM_s2,​ LOW);
 +    digitalWrite(RM_s1,​ LOW);
 +   ​digitalWrite(RM_s2,​ LOW);
 + //​delay(20);​
 +}
 +
 </​code>​ </​code>​
  
  
10i_2025_algo.1741870424.txt.gz · Последние изменения: 2025/03/13 15:53 — super_admin