{
  "format": "rubrick-lesson",
  "formatVersion": 1,
  "exportedAt": "2026-11-06T20:21:13.841Z",
  "source": {
    "lessonId": "00000000-0000-4000-8001-c3c16e06996e",
    "courseId": "00000000-0000-4000-8000-1193e3f22a29",
    "courseTitle": "Первые шаги",
    "ordering": 2,
    "updatedAt": "2026-09-27T10:47:11.667886+00:00"
  },
  "lessonTask": null,
  "lessonTaskSchemaVersion": null,
  "lesson": {
    "schemaVersion": 3,
    "id": "first-steps-02-line",
    "courseId": "first-steps",
    "order": 2,
    "title": "Прямая линия",
    "summary": "Робот проезжает заданное расстояние и останавливается",
    "duration": 25,
    "mode": "blocks",
    "attachments": [],
    "sections": [
      {
        "kind": "intro",
        "body": "Робот проезжает заданное расстояние и останавливается\n\n### Чему научишься\n- Задать параметры сборки в первом блоке программы\n- Проехать заданное расстояние\n- Сравнить задуманное расстояние с получившимся\n\n### Новое\n- Расстояние задаётся в сантиметрах, а не «на глазок»\n- Чтобы считать сантиметры, робот должен знать размер своих колёс\n- Скорость влияет на точность: чем быстрее, тем сильнее занос",
        "attachments": [],
        "steps": []
      },
      {
        "kind": "task",
        "body": "Заставь робота проехать ровно 30 сантиметров вперёд и остановиться. Проверь линейкой, насколько он ошибся.\n\n### Результат\n- Робот проехал вперёд и сам остановился\n- Ты знаешь, на сколько сантиметров он ошибся",
        "attachments": [],
        "steps": [
          {
            "id": "s1",
            "title": "Настрой колёса",
            "body": "Первым блоком поставь «настройка колёс»: диаметр колеса, ширину между колёсами и порты моторов.",
            "attachments": []
          },
          {
            "id": "s2",
            "title": "Проедь вперёд",
            "body": "Добавь блок «проехать вперёд» и укажи 30 см.",
            "attachments": []
          },
          {
            "id": "s3",
            "title": "Остановись",
            "body": "Заверши программу блоком «стоп»: без него моторы могут остаться под током.",
            "attachments": []
          },
          {
            "id": "s4",
            "title": "Измерь",
            "body": "Запусти и измерь пройденное расстояние. Запиши, на сколько робот промахнулся.",
            "attachments": []
          }
        ],
        "hints": [
          "Робот проезжает не то расстояние? Измерь колесо линейкой и впиши настоящий диаметр — программа считает сантиметры именно по нему."
        ]
      },
      {
        "kind": "assembly",
        "body": "### Понадобится\n- Ноутбук с приложением ученика\n- Виртуальный робот или настоящий с двумя моторами\n- Линейка или рулетка — если робот настоящий\n\nБазовая платформа с двумя ведущими колёсами. Левое колесо — в разъём D, правое — в C. Разъёмы подписаны буквами прямо на плате; если у тебя другие, поменяй их в блоке «настройка колёс».",
        "attachments": [],
        "steps": []
      },
      {
        "kind": "connection",
        "body": "",
        "attachments": [],
        "steps": []
      },
      {
        "kind": "example",
        "body": "### Что должно получиться\n- Виртуальный робот едет по полю, путь видно на карте движения",
        "attachments": [],
        "steps": [],
        "program": {
          "mode": "blocks",
          "python": "# Сначала объявляем сборку: без этого робот не знает, сколько это — сантиметр.\n# Левое колесо в разъёме D, правое в C. В программе порт пока пишется числом:\n# D=1, C=2, B=3, A=4 — это порядок разъёмов на плате, а не алфавит.\nrobot.configure_drive(wheel_diameter_mm=43.2, track_width_mm=120, left_motor=1, right_motor=2)\n\nrobot.forward_cm(30)\nrobot.stop()\n"
        }
      },
      {
        "kind": "next",
        "body": "",
        "attachments": [],
        "steps": []
      }
    ],
    "category": "Движение",
    "colour": "#FFF200"
  }
}