roboforum.ru

Технический форум по робототехнике.

Использование "нестандартныx" Atmel с Arduino IDE

Использование "нестандартныx" Atmel с Arduino IDE

tomilkos239 » 21 июл 2013, 00:15

Доброго времени суток, обитатели робофорума;) Использовал я 328 мегу и использовал. Но тут появилась проблема, мне не хватает скорости выполнения одного "прохода" цикла. А программировать, кроме как в Arduino IDE, я не умею :crazy: Подскажите пожалуйста, можно ли программировать другие, нестандартные меги, отличные от atmega328/128/64/8, с Arduino IDE? И если можно дайте примеров, что-ли. :)

Re: Использование "нестандартныx" Atmel с Arduino IDE

Myp » 21 июл 2013, 00:48

а почему ты думаешь что другие будут быстрее?
скорость выполнения цикла зависит от тактовой частоты.

чтобы ускорить можно либо поднять частоту с штатных 16 до 20 мГц
http://www.grozeaion.com/electronics/ar ... a328p.html
тока надо будет прошить новый бутлоадер и перепаять кварц.

вобще есть некоторые маньяки которые разгоняли её аж до 30 мГц
http://garagelab.com/profiles/blogs/atm ... lock-30mhz
и вроде она даже работала в некотором виде))

Re: Использование "нестандартныx" Atmel с Arduino IDE

tomilkos239 » 21 июл 2013, 01:08

А намного будет быстрее работать если вместо 16 влепить 20? Ну ATmega1280 быстрее же будет, чем 328я?)

Добавлено спустя 4 минуты 26 секунд:
Вот. Скажем, есть лайнтрейсер. И мне нужно повысить скорость выполнения одного цикла. Если я поставлю кварц на 20мГц вместо 16, то будет быстрее? Кстати автор ставит 24, а не 20. Блин, в даташите, сказано же, что максимум 20. Не будет ли это плохо?

Re: Использование "нестандартныx" Atmel с Arduino IDE

Angel71 » 21 июл 2013, 02:37

эти авр, это вам не процы в настольном компьютере. вдумайтесь, что есть тактовая частота, количесто озу, флеша, различия в переферии. :) намекаю - ядро у мег одинаковое, т.е. на одинаковой частоте они и будут выполнять одинаковое количество одинаковых инструкций.
tomilkos239 писал(а):А намного будет быстрее работать если вместо 16 влепить 20?

будет (возможно ещё и пару конденсаторов придётся поменять, а может ещё и в коде чего), ровно на 4МГц.
можно и 30 и 50 и 100 мгц, но чем больше частота, тем больше переферии будет отваливаться и больше глючить мк.
имхо если вам 20мгц будет мало, то или искать варианты оптимизации кода (вплоть до замены части кода на встаки на асме) или пробовать немного подразогнать. если при разгоне будет глючить, логичней задуматься об изучении более производительных мк.

Re: Использование "нестандартныx" Atmel с Arduino IDE

Dmitry__ » 21 июл 2013, 02:47

Может ардуины на арм или pic32?
http://habrahabr.ru/post/123236/

Re: Использование "нестандартныx" Atmel с Arduino IDE

tomilkos239 » 21 июл 2013, 03:02

Dmitry__ писал(а):Может ардуины на арм или pic32?
http://habrahabr.ru/post/123236/

Было бы не плохо. Только надо эту "ардуину" еще разместить. В смысле мне ее надо будет собрать самому. Чтобы встроить в робота. Иначе не имеет смысла. Ну они arduino-совместимые. А можно ли их прогать в Arduino IDE? Мне это нужно. Вот, например:
Изображение
Изображение
Не уменьшил изображение. Уупсс :crazy:

Добавлено спустя 2 минуты 4 секунды:


Уменьшите страницу в 2 раза ахах)

Re: Использование "нестандартныx" Atmel с Arduino IDE

Dmitry__ » 21 июл 2013, 04:27

Ну так попробуй скачай иде, сравни, по философии совместимости должно пойти...
Есть подозрение (по фоткам пупер устройства), что пора оптимизировать программу, ибо той avr в таких задачах - за глаза.

Re: Использование "нестандартныx" Atmel с Arduino IDE

Angel71 » 21 июл 2013, 05:29

tomilkos239 писал(а):Не уменьшил изображение. Уупсс :crazy:
Добавлено спустя 2 минуты 4 секунды:
Уменьшите страницу в 2 раза ахах)

не находите, что более логично не уменьшение страницы кучей людей, а приведение в порядок фоток одним человеком? по секрету: если уменьшить их до примерно 320*200 или еще меньше, то информации на них меньше не станет.

Re: Использование "нестандартныx" Atmel с Arduino IDE

tomilkos239 » 21 июл 2013, 06:26

Dmitry__ писал(а): той avr в таких задачах - за глаза.

Нет, к сожалению, не за глаза. Это я привел пример. Этому лайнтрейсеру, может и за глаза. Ему не надо ездить быстро. Этот для сложных линий. Для простых, но быстрых есть другой. Так вот, один цикл простого, достаточно оптимизированного ИМХО, ПД-регулятора, выполняется слишком медленно, для скорости в 2 м/с... Хотелось бы еще быстрее :-P На шиме ~150 приходится, на моторах 30:1. Хотелось бы выжать все 3 м/с. Для этого нужно увеличить скорость реакции, или отклика. Попробую сделать пока на 24 мГц. Может быстрее будет.

Re: Использование "нестандартныx" Atmel с Arduino IDE

Nesenin » 21 июл 2013, 06:50

полетный контроллер для квадрокоптера MultiWii имеет время цикла в некоторых версиях 3мс (мега 328 16Мгц). то есть аппарат буквально летает, успевая обрабатывать кучу датчиков, обрабатывать инфу и крутить ПИДами для 2-6 моторов. зацените код https://code.google.com/p/multiwii/downloads/list

в сети гуглятся статьи по ускорению работы кода IDE.

Re: Использование "нестандартныx" Atmel с Arduino IDE

Dmitry__ » 21 июл 2013, 06:56

Не верю :)
Код ПД регулятора в студию, сколько мс. цикл ПД?
tomilkos239 писал(а): На шиме ~150 приходится, на моторах 30:1. Хотелось бы выжать все 3 м/с

Чего 150? :shock:
tomilkos239 писал(а):Попробую сделать пока на 24 мГц. Может быстрее будет.

Будет быстрее ровно на столько, на сколько кварц 24 мгц. быстрее 16-ти мгц. т.е в 1.5 раза.

Добавлено спустя 1 минуту 7 секунд:
Опс, Nesenin опередил, причем убедительнее :)

Re: Использование "нестандартныx" Atmel с Arduino IDE

tomilkos239 » 21 июл 2013, 07:08

Nesenin писал(а):аппарат буквально летает

Ахах) Он не буквально, а в прямом смысле летает хах)

Согласен. Тогда нужна оптимизация. Просто реально не хватает 328 ИМХО. Или я такой корявый программист :crazy: обожаю этот смаил;)
Посмотрим. На днях поставлю на 20 мГц кварц, вот и посмотрим ;) Могу код выложить. Может реально корявый? :crazy: :crazy: :crazy:

Добавлено спустя 1 минуту 26 секунд:
Dmitry__ писал(а): Чего 150?

Шим 150 подаю на ДД.

Добавлено спустя 1 минуту 18 секунд:
Во-сколько раз быстрее будет, я догадался;) Жаль это потолок частоты. 30 мГц боюсь.

Добавлено спустя 22 секунды:
Ща выложу код. Секунду)

Добавлено спустя 7 минут 55 секунд:
Как код выложить?

Re: Использование "нестандартныx" Atmel с Arduino IDE

Nesenin » 21 июл 2013, 07:09

Код: Выделить всёРазвернуть
[code]так[/code]

Re: Использование "нестандартныx" Atmel с Arduino IDE

tomilkos239 » 21 июл 2013, 07:10

Так и делаю.

Добавлено спустя 20 секунд:
Выкидывает почему-то 0_0

Re: Использование "нестандартныx" Atmel с Arduino IDE

Dmitry__ » 21 июл 2013, 07:13

тут глюк в форуме, в сообщении не должно быть символов "знак меньше"
Админ меня игнорит :cry: :cry: :cry:
forum5/topic13073-45.html#p278414


Rambler\'s Top100 Mail.ru counter