slom » 11 май 2015, 23:55
на подобии как тут с данными от уз датчика?
http://habrahabr.ru/post/198102/- Код: Выделить всё • Развернуть
long trueDistance() //считываем датчик n раз и возвращаем среднее значение
{
int n=10;
long _value=0;
for(int i =0; i<n; i++)
_value += distance();
return _value/n;
}
считывать раз 5-10 значение с джойстика и выбирать среднее значение?
Petr Kiselev » 12 май 2015, 08:34
citizen писал(а):Petr Kiselev, а что что это за гусеницы такие? Что-то покупное?
Гусеницы покупные. Мне мой друг

сделал форму для литья траков, но я поленился делать самодельные. Для это пришлось бы делать литьевую машинку.
Добавлено спустя 2 минуты 54 секунды:Вообще-то, эти гусеницы слабые. Уже рвались дважды! А это были только испытания!
slom » 12 май 2015, 09:27
зачем лить то что можно купить...
затраты на собственное изготавливание будут куда больше покупных! разве что ради удовольствия... но дышать парами металлов - сомнительное удовольствие
на али експрес полно металлических комплектов.
например
http://ru.aliexpress.com/item/henglong- ... 92871.htmlно стоят они конечно дороже...
Petr Kiselev » 14 май 2015, 18:49
Испытывали сегодня Танкетку. Ездит так себе. Не хватает мощи аккумо.
Вот ее вид.

slom » 14 май 2015, 21:43
а мощи 2х моторов хватает?
Petr Kiselev » 14 май 2015, 22:41
На Гусеничном с клешней стоят тоже 2 мотора. На видео с утилизацией "мины" он препятствие из досок легко преодолевает. А здесь, видно, маленькие опорные колеса все портят. Надо будет попробовать поставить большие катки. Проведу испытания - сообщу о результате.
slom » 14 май 2015, 23:07
кстати можно глянуть ваш скетч по управлению сопером...
Petr Kiselev » 15 май 2015, 20:14
Вот скетч для Танкетки, который написал мой студент Малахов Иван. Это входит в его дипломный проект.
Скетч Танкетки
От Малахова Ивана
//Моторы
int IN1 = 2;
int IN2 = 3;
int IN3 = 4;
int IN4 = 5;
//Приемник
int IN8 = 8;//0(A) НАЗАД
int IN9 = 9; //1(B) ПРАВО
int IN10 = 10; //2(C) ПРЯМО
int IN11 = 11;//3(D) ЛЕВО
//ФАРЫ
//ЗАДНИЕ
int IN6 = 6; //Право
int IN7 = 7;//Лево
//ПЕРЕДНИЕ
int IN12 = 12; //Право
int IN13 = 13;//Лево
void setup()
{
Serial.begin(9600);
pinMode (IN1, OUTPUT);
pinMode (IN2, OUTPUT);
pinMode (IN3, OUTPUT);
pinMode (IN4, OUTPUT);
pinMode (IN6, OUTPUT);
pinMode (IN7, OUTPUT);
pinMode (IN12, OUTPUT);
pinMode (IN13, OUTPUT);
pinMode (IN8, INPUT);
pinMode (IN9, INPUT);
pinMode (IN10, INPUT);
pinMode (IN11, INPUT);
digitalWrite (IN6, LOW);
digitalWrite (IN7, LOW);
digitalWrite (IN12, LOW);
digitalWrite (IN13, LOW);
digitalWrite (IN1, LOW);
digitalWrite (IN2, LOW);
digitalWrite (IN3, LOW);
digitalWrite (IN4, LOW);
}
void loop() {
if (digitalRead(IN10)==HIGH ){
//ПРЯМО
//Левый борт
digitalWrite (IN1,HIGH ); //Назад
digitalWrite (IN2,LOW); //Вперед
//Правый борт
digitalWrite (IN3,HIGH ); //Назад
digitalWrite (IN4,LOW); //Вперед
}
if (digitalRead(IN8)==HIGH ){
//НАЗАД
//Левый борт
digitalWrite (IN1,LOW ); //Назад
digitalWrite (IN2,HIGH); //Вперед
//Правый борт
digitalWrite (IN3,LOW); //Назад
digitalWrite (IN4,HIGH); //Вперед
digitalWrite (IN6,HIGH ); //Правая задняя фара
digitalWrite (IN7,HIGH); //Левая задняя фара
digitalWrite (IN12,LOW ); //Правая задняя фара
digitalWrite (IN13,LOW); //Левая задняя фара
}
if (digitalRead(IN11)==HIGH ){
//ЛЕВО
//Левый борт
digitalWrite (IN1,LOW ); //Назад
digitalWrite (IN2,HIGH); //Вперед
//Правый борт
digitalWrite (IN3,HIGH ); //Назад
digitalWrite (IN4,LOW); //Вперед
digitalWrite (IN7,HIGH ); //Левая задняя фара
digitalWrite (IN13,HIGH); //Левая передняя фара
digitalWrite (IN12,LOW );
digitalWrite (IN6,LOW);
}
if (digitalRead(IN9)==HIGH ){
//ПРАВО
//Левый борт
digitalWrite (IN1,HIGH ); //Назад
digitalWrite (IN2,LOW); //Вперед
//Правый борт
digitalWrite (IN3,LOW ); //Назад
digitalWrite (IN4,HIGH); //Вперед
digitalWrite (IN6,HIGH ); //Правая задняя фара
digitalWrite (IN12,HIGH); //Правая передняя фара
digitalWrite (IN7,LOW );
digitalWrite (IN13,LOW);
}
if ( (digitalRead(IN8)==LOW) and (digitalRead(IN9)==LOW) and (digitalRead(IN10)==LOW) and (digitalRead(IN11)==LOW)){
//СТОП
//Левый борт
digitalWrite (IN1, LOW); //Назад
digitalWrite (IN2, LOW); //Вперед
//Правый борт
digitalWrite (IN3, LOW); //Назад
digitalWrite (IN4, LOW); //Вперед
digitalWrite (IN6,HIGH ); //Правая задняя фара
digitalWrite (IN7,HIGH); //Левая задняя фара
digitalWrite (IN12,LOW );
digitalWrite (IN13,LOW);
}
}//Конец void loop
Добавлено спустя 6 минут 8 секунд:
Кстати, сегодня исправили Танкетку. Заменили моторы. Стояли 180 об/мин, поставили 77 об/мин. Совсем другое дело! Черех ноги и полозья столов перебирается запросто.
slom » 15 май 2015, 22:45
спасибо за скетч.
хорошо вам, студенты есть, можно гонять

мне б студентов, они б у меня космические корабли б строили

Angel71 » 15 май 2015, 22:55
закончат обучение, нанимайте.

Petr Kiselev » 16 май 2015, 08:58
Главное - встретить увлеченных! С такими, как мой студент Малахов Иван, можно сделать многое!!
Жаль, таких крайне мало.
Еще месяц и они выпустятся, уйдут, и снова поиски сообразительных, умных, увлеченных...
Ну, что ж, Се ля ви!
slom » 16 май 2015, 09:13
уйдут в большую жизнь робототехники

Petr Kiselev » 16 май 2015, 14:01
Вчера сделал ЦПУ. Вот он.
Добавлено спустя 2 минуты 50 секунд:И вид сверху.
Добавлено спустя 2 минуты 58 секунд:Да, забыл пояснить, что это я делаю для Амфибии (двухкорпусной гусеничный робот).
slom » 16 май 2015, 22:10
что то мне пружина не кажется надежным элементом...
она может растягиваться, изгибаться, получать деформацию, невозвращаясь в прежнее положение, и ваша телега перекоситься, будет криво ездить...
ведь незря на спаренном тракторе гидравлика стоит а не пружины... не все так просто...
Angel71 » 16 май 2015, 22:17
если перефразировать, то разработчики всунули первую попавшуюся пружину на трактор и им не понравилось. а другие прилепили не первую попавшуюся и тракторы, как и куча других бибик годами катаются.

они что-то знают...