Существуют ли альтернативы схемам Tinkercad, основанным на ПК-приложениях, а не на веб-приложениях?

Я использовал веб-приложение схем Tinkercad для создания моих схем Arduino и применения моего кода Arduino (c++) для тестирования.

Несмотря на удивительный продукт, который у них есть, и тот факт, что он бесплатный, я иногда очень разочаровываюсь. Не поймите меня неправильно, у Tinkercad есть куча отличных продуктов, которые я использую все время (например, "3d-дизайн"). Я просто чувствую, что "Схемы" нуждаются в работе или, может быть, даже в другом исправлении.

Я занимался некоторыми из следующих вопросов...

  1. Чрезвычайно медленный интерфейс, создающий мою схему:

    Я видел, как он делает кучу случайных вещей, которые могли бы использовать некоторые TLC в интерфейсе. Иногда объекты застревают, и вам приходится отключать их от всего, прежде чем вы сможете их переместить. Иногда при использовании макетной платы объекты, которые кажутся подключенными к точечному отверстию, не имеют никакого соединения и должны быть подключены к макетной плате с помощью провода. Я вижу кучу маленьких кварков. Ни один из них не является шоу-стоппером, и я могу обойти их, но медленный интерфейс заставляет меня ненавидеть иметь дело с веб-приложением. Это заставляет меня действительно хотеть приложение для ПК вместо этого.

  2. Отсутствие поддержки обновления компилятора Arduino:

    Это очень старая версия, и они не спешат ее обновлять. Я связался с поддержкой группы проблем с компилятором, не компилирующим код, который отлично работает в Arduino IDE. Классы должны быть определены определенным образом, перечисления должны быть определены старым способом, который делает исходный код уродливым и т. Д. Кроме того, я дал им понять, что при отладке практически невозможно узнать, где находится ваша ошибка, потому что она не сообщает вам номер строки, на которой у нее была проблема. Он пытается выделить линию с небольшим успехом в моих тестах. Я предложил им, что, возможно, они могли бы ввести новый вариант выбора версии компилятора для использования для каждого проекта таким образом, старые конструкции не ломаются и т. Д. Я не получил никакой обратной связи по отзывам, которые я подал. Так что я думаю, что это не пойдет.

  3. Время моделирования:

    Это самый страшный преступник на сегодняшний день! Это главная причина, по которой я хочу искать другое программное обеспечение для замены схем Tinkercad. При моделировании кода на моей схеме моделирование выполняется в миллисекундах (НЕ в реальном времени). У меня есть код, настроенный на то, чтобы сделать что-то за 15 секунд. Кажется, это произойдет в мгновение ока... НЕТ! Мне нужно подождать около 15 минут, чтобы увидеть результаты!!

Итак, вернемся к моему первоначальному вопросу... Есть ли там приложение для ПК, которое делает то же самое, что и схемы Tinkercad? Я хочу иметь возможность спроектировать схему Андрино, а затем протестировать с ее помощью код.

, 👍5

Обсуждение

У меня не было таких же проблем, но я не использовал его так часто, как это звучит, как вы. Эмуляция всегда будет относительно медленной, поэтому убедитесь, что вы используете как можно более мощный компьютер (без планшетов/ноутбуков) для его запуска. Эмуляция также будет замедляться по мере увеличения размера кода, возможно, даже экспоненциально. Я видел, как он становится лучше с момента запуска, так что дайте ему время. Тем временем я пытался изолировать и протестировать более мелкие части, издеваясь над "неподвижными частями", чтобы избежать накладных расходов. Я не видел ничего лучше..., @dandavis

Не используйте симуляцию. Используйте настоящий Arduino и IDE. Симуляция часто ошибается, и вы обнаруживаете, что вещи, которые "работали" в симуляции, в реальной жизни не работают. Полностью пропустите симуляцию и избавьте себя от головной боли из-за того, что позже что-то не сработает., @Majenko

@Majenko это должно быть почти ответом... Я полностью согласен! После некоторого тестирования вчера на каком-то исходном коде Tinkercad запускал что-то именно так, как я ожидал, и когда он был мигнут на мой ATtiny85, это было похоже на НЕТ! bool resetButtonIsPressed = (digitalRead(PB_BUTTON) == HIGH ? true : false); отлично работает в c++ (также TinkerCad). Но единственный способ заставить его работать на ATtiny85-это использовать `bool resetButtonIsPressed; if (digitalRead(PB_BUTTON) == LOW) { resetButtonIsPressed = false; } else { resetButtonIsPressed = true;}'., @Arvo Bowen


2 ответа


Лучший ответ:

4

Я работаю с симулятором wokwi Arduino

  • Это быстрее
  • Он использует последнюю версию Arduino IDE для компиляции
  • Он почти работает в режиме реального времени. Например, ваша работа в 15 секунд может быть выполнена примерно на 17-й или 20-й секунде.

Пожалуйста, попробуйте. вот некоторые ссылки

Ссылки: https://wokwi.com и https://wokwi.com/arduino/libraries

,

Спасибо за предложение!, @Arvo Bowen


2

Я попытаюсь найти такое приложение для ПК, но я никого не могу найти. Когда я отказался от поиска такого приложения, я написал свой собственный эмулятор arduino через qt. Мое приложение включает приложение arduino и компилирует их как часть приложения qt. Спасибо макросам #ifdef, я меняю arduino.h . Мой эмулятор не позволяет добавлять элементы схемы, но дает вам преимущество наблюдать за состояниями выводов и устанавливать для них значения. Вы можете исправить свой проект и эмулировать свои собственные функции и алгоритмы. Вот оно https://github.com/ravenclawprog/arduino_mobil

,