Скорпионоид или Hallo World! (фотоотчет)

Итак, Скорпионоид или что я сотворил из чудо пластика, CraftDuino и набора Starter kit + сервы… получилось простенько, но как говорится — со вкусом. Самое сложное в нашем деле — как всегда — идея!
робот-скорпион

И вот, подобно товарищу Менделееву, ответ был найден в процессе пребывания в анабиозе после очередного ночного марафона просмотра гексологии Звездных Войн…

Все использованные материалы для моего таракана были получены из магазина Robocraft, за что ему огромное спасибо!
Для начала был заготовлен материал известный в миру как протопласт, чудо-пластик, а правильнее сказать Polycaprolactone — пластик для быстрого прототипирования.

Толи из бедности, толи по наитию использовал метод чайника для расплавки сего полимера. Получилось весьма интересно, да хотя бы наблюдать за его метаморфозой — белые не прозрачные шарики пластика после заливания их кипятком становятся сначала прозрачными шариками(прям как свежая пресвежая красная икра -только бесцветная), а затем сплавляются в единый прозрачный слой на дне стакана. Причем прозрачным на столько, что я не сразу заметил его наличие в используемой емкости.

приступим…

полученную массу вытаскиваем на стол и раскатываем



раскатали… курим и видим
через 2 минуты…



через 5 минут…



как видим полимеризация на лицо…
получил я вот такого вида лист пластика толщиной 2-3 мм…



из него и ему подобных я с неописуемой легкостью при наличии острого режущего инструмента заготовил передние конечности для изготовляемого насекомого…





получили две брутальные ноженьки и налепил их при помощи тогоже пластика к рычагам сервы и с успехом прикрутил их непосредственно к самим моторам, благо набор рычагов и винтов крепления идус сервами в комплекте… и вот две ноги…



радуемся такой красоте и созерцаем в деловом беспорядке завалявшуюся третью серву



вот из неё то, родимой я и сделал заднюю пару ног — долго не лепил, а сваял первое что пришло в голову похожее на пару задних лап…

перейдем к туловещу…
запарил ещё протопласта и лепил часа 2 в попытке придания нужных форм, изменения идей по ходу лепки, попутно подогревая деталь в кипятке, чтоб не застыла.
прорезаем пазы под сервы в корпусе и вуаля — платформа всборе!







Собираем шилд.

для его изготовления понадобились:

— 3 красных светодиода
— пьезо-пищалка
— 3 резистра 100 Ом и 1 на 10к
— фоторезистор
— моток монтажного одножильного провода
— паячный протошилд
— пины для установки шилда в CraftDuino они же однорядная гребёнка шаг 2.56 прямая + гнутая
— припой, флюс и паяльник.
— время.

получаем





далее лепим хвост, крепим в теле светики и CraftDuino протягиваем провода







Что касается скеча, то он прост как Blink. все части взяты из примеров программы Arduino IDE и примеро в на этом сайте.


// Scorpionoid
// by ABBIVAN  < abbivan@mail.ru >



#include <Servo.h> 

Servo levnoga;  
Servo pravnoga;     // объявили сервы          
Servo zadnogi;
int pos = 0;   // переменная положения вала серв

int svet =0;   // значение напряжения снимаемого с фоторезистра
int anpin=0;   // аналоговый вход на котором сидит фоторезистор
int a = 0 ;
int speakerPin = 6;  // цифровой выход на котором сидит пьезопищалка
int levglaz = 11;
int pravglaz = 12;  // объявили пины для светодиодов
int hvostsvet = 3;

int length = 10;               // сочиняем мелодию
char notes[] = "eeecgecge ";  
int beats[] = { 2, 2, 2, 1, 1, 2, 2, 1, 3, 4 };
int tempo = 300;

void playTone(int tone, int duration) 
{
	for (long i = 0; i < duration * 1000L; i += tone * 2) 
	{
		digitalWrite(speakerPin, HIGH);
		delayMicroseconds(tone);
		digitalWrite(speakerPin, LOW);
		delayMicroseconds(tone);
	}
}

void playNote(char note, int duration) {
	char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
	int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };

	// проиграть тон, соответствующий ноте
	for (int i = 0; i < 8; i++) 
	{
		if (names[i] == note) 
		{
			playTone(tones[i], duration);
		}
	}
}


void setup() 
{ 
	levnoga.attach(9);
	pravnoga.attach(10); //  цифровые выходы CraftDuino на которые подсоединили сервы
	zadnogi.attach(8);
	pinMode(levglaz, OUTPUT);
	pinMode(pravglaz, OUTPUT);
	pinMode(hvostsvet, OUTPUT);
	pinMode(speakerPin, OUTPUT);
} 

void loop() 
{ 
	svet = analogRead (anpin); 
	if ( svet >= 800 )
	{
		a == a++ ;
	}
	if ( a == 1) 
	{
		delay (2500);
		for (int i = 0; i < length; i++) {
			if (notes[i] == ' ') 
			{
				delay(beats[i] * tempo); // пауза
			} 
			else
			{
				playNote(notes[i], beats[i] * tempo);
			}

			// пауза между нотами
			delay(tempo / 2); 
		}
	} 

	if ( svet >= 800 )
	{

		digitalWrite(hvostsvet, HIGH);
		for(pos = 70; pos <= 120; pos += 1)   
		{                      
			digitalWrite(levglaz, HIGH);
			delay(2);
			digitalWrite(levglaz, LOW);
			digitalWrite(pravglaz, HIGH);
			delay(2);
			digitalWrite(pravglaz, LOW);
			// in steps of 1 degree 
			levnoga.write(pos+10); 

			pravnoga.write(pos-40); 

			zadnogi.write(pos-10);
			delay(6);                       
		} 
		for(pos = 120; pos>=70; pos-=1)      
		{       
			digitalWrite(levglaz, HIGH);
			delay(2);
			digitalWrite(levglaz, LOW);
			digitalWrite(pravglaz, HIGH);
			delay(2);
			digitalWrite(pravglaz, LOW);    
			levnoga.write(pos); 
			pravnoga.write(pos-50); 
			zadnogi.write(pos+40); 
			delay(6);                       
		} 
	}
	else 
	{
		a = 0;

		digitalWrite(hvostsvet, LOW);
		for(pos = 70; pos <= 120; pos += 1)  
		{                      
			// in steps of 1 degree 
			levnoga.write(pos+30); 

			pravnoga.write(pos-40);  

			zadnogi.write(pos-10);
			delay(10);                       
		} 
		for(pos = 120; pos>=70; pos-=1)     
		{       
			levnoga.write(pos); 
			pravnoga.write(pos-50); 
			zadnogi.write(pos+40); 
			delay(10);   
		} 
	}
} 


И так имеем:

— скорпионоид идет,
— думает — светло сейчас или нет
считывая инфу с аналогового входа на котором висит фоторезистор.
если светло-ну и Бог с ним-идем дальше
если темно:
-обрабатывает условие (иже сравнивает величину напряжения на analog pin с заданным в условии).
— при выполнении условия -остонавливается, радует нас музыкальной темой ДартВэйдэр из звездных войн,
включает фары и топает дальше)))
-при дальнейшем росте освещенности без остановок выключает фары и убегает в темное место :)

общий вид











А вот ОН и в действии:


бегает он шустро… правда когда от usb запитываю — шнур у меня с наболдажником- тяжело его тянуть ему — уводит влево… блок питания не могу найти — где то в бардаке)))

это и есть мой первый робот-простенький — зато от всего сердца...)))
всем братьям и сестрам по интересам — УДАЧИ!!!

при использовании материала ссылка на сайт robocraft.ru обязательна
  • +6
  • 25 марта 2011, 23:32
  • abbivan

Комментарии (9)

RSS свернуть / развернуть
+
+1
офигительно круто! :)
avatar

noonv

  • 25 марта 2011, 23:44
+
+1
Здорово, простенько и со вкусом=))
жду демонстрации вживую
и многоступенчатой эволюции=))))
avatar

Zoltberg

  • 25 марта 2011, 23:53
+
0
Круто :)
Тоже пожелаю развития :)
avatar

Tickat

  • 26 марта 2011, 00:20
+
+1
Сделано интересно, но имхо электронику стоит скрыть, а учитывая количество деталей советую попробовать обойтись без дуины, только микроконтроллер.
avatar

mogalkov

  • 26 марта 2011, 11:17
+
0
Тоже подумывал запрятать под панцерем, но времени как всегда мало(((
да и вид голых железок придает ему очаровательный индустриальный шарм )))
avatar

abbivan

  • 26 марта 2011, 23:16
+
0
Круто! А можно узнать поподробней о шилде?
avatar

v1ctor

  • 26 марта 2011, 16:04
+
0
Всем спасибо за комменты!!!

Касаемо шилда:

очень простенький он, можно сказать юниоровский)))
но если есть конкретные вопросы, то с радостью отвечу…
avatar

abbivan

  • 26 марта 2011, 23:13
+
+1
Симпатично, но код скетча — это кошмар.
Все пины лучше поименовать, а то спискер поименован, а вот какая из серв на какую ногу завязано — непонятно… Так же не ясно, за что отвечают 3, 11 и 12 пины. То есть, конечно разобраться можно, но тугова-то это :)

А так — да, очень симпатичный бот.

Что касается провода и увода влево — тут да, проблемка. Я сейчас черепашку собираю, то же самое. И не понятно на что грешить, на кривость ног или вес провода.
avatar

crew

  • 6 апреля 2011, 10:57
+
+1
Учел замечания и по заказам трудящихся подправил скеч…
спасибо за замечание… ждем отчет по черепашке ))
avatar

abbivan

  • 6 апреля 2011, 12:02

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.