Robot Rabbit #193

#193

Плата для завода оказалась сложнее, чем думал. Она заменяет RoboClaw, понижайки, драйвер сервоприводов и кучу проводов: STM32, два драйвера моторов, Raspberry Pi прямо на плате, у каждой нагрузки свой электронный предохранитель с измерением тока, рука xArm, 6 ToF датчиков, 3 лидара.

Самое интересное началось на трассировке. Сначала взяли Freerouting: на этой плате он только раскладывал выводы под переходные отверстия 37 минут. Нашли fastroute, порт Freerouting на Rust: тот же этап за 25 секунд. Дальше гоняли эксперименты и смотрели, сколько связей остается неразведенными:

  • 6 слоев, силовые заливки отданы трассировщику как препятствия: 350 неразведенных после 4 часов
  • 8 слоев и заливки после трассировки: 91
  • разделенный силовой слой, а цепи на 10-15 A только по внешней меди 2 oz: 76
  • выкинули 92 детали из 763, обновили fastroute с 0.1.7 до 0.1.13: плато то же, но в 1.5-2 раза быстрее
  • расширили плату до колес и удлинили хвост, +30% площади, подкрутили правила трассировщика: 56
  • расстановку деталей с нуля сделал Fable: блок микроконтроллера ушел в хвост, вокруг мелких QFN кольцо 2 мм, между драйвером и разъемом мотора пустая полоса под медь: 27

Интересно, что новая расстановка дала больше, чем лишние слои и площадь вместе. И Fable отдельно поймал, что дорожка 1.2 мм на 10 A сгорит, хотя DRC ее спокойно пропускает. Последние 27 связей добиваем руками.

Делать будем на JLCPCB одним заказом, и руками там почти ничего: скрипт сам выгружает файлы для завода и сверяет каждую из 166 позиций со складом через их API, завод паяет все с обеих сторон. В ту же посылку едут 10 плат для датчиков, которые агент спроектировал за вечер (выяснилось, что VL53L8CX не живет от 3.3 V, нужен свой стабилизатор на 1.8 V и преобразователь уровней), и нейлоновые уголки, напечатанные там же. По прикидке ~$1.5-1.8k.

Плата для завода оказалась сложнее, чем думал (фото 1) Плата для завода оказалась сложнее, чем думал (фото 2) Плата для завода оказалась сложнее, чем думал (фото 3)