roboforum.ru

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

rover p3 бесчеловечные эксперименты и ворклог

Ответить

Myp » 25 апр 2007, 21:15

[off]ага
хочется чегото такого серьёзного
строгово


да и краска толька  такая была =)

зато пачкацца не будет =)[/off]

SSG » 26 апр 2007, 10:42

[off]А где бамперы, спойлеры, юбки? :) [/off]
А чего колесика тока два? А в зад ты ему поддерживающую колесику не будешь ставить?

Myp » 26 апр 2007, 12:14

гыгы
ну он типа балансирующий :lol:

он и на 2х колёсах ездит отлично
тока корпусом шкваркает громко когда по голому полу едет=)

вобще там будет акумулятор свинцовый стоят маленький в одном конце
так что 1 колесо я приделаю поддерживающее под акумулятор
(вобще я туда просто круглый колпачёк от дезодоранта ставил и номано было)
получится половина робота на 3х колёсах, половина робота в воздухе за счёт противовеса =)

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

Валерос » 26 апр 2007, 12:23

Myp писал(а):гыгы
ну он типа балансирующий :lol:
шерстяной робот=))


БУ-ГА-ГА...
добавь ещё пару электродов на мохнушку и собирай статическое напряжение для дальнейшего разряда на противнике.... :lol:

Myp » 26 апр 2007, 12:44

[off]у меня была идея вобще его ковром обклеить...
таким же как и на полу, у меня обрезков много
был бы камуфляжный робот
тока боюсь яб его не заметил и наступил бы...[/off]

SSG » 26 апр 2007, 15:43

[off]
Myp писал(а):будет вобще жуть=) шерстяной робот=))

Гыгы. Как машинка в фильме "Тупой и еще тупее"  :lol:
[/off]

Myp » 05 май 2007, 00:04

ой ну наконец
моск сново заработал


вобщем программа выведена на новый уровень
теперь мк принимает команды от кпк и в зависимости от команды устанавливает направление вращения двигателя и величину шима
правда с шимом маленькие запарки
у мну всего возможно передавать 50 уровней
0 - шим - 0%
50 - шим 100%

приняв команду R78 извлекаем из неё такие данные: правый мотор вращение по часовой шим 56%
немогу сообразить как мне в шим  сразу загнать 2 последние цифры из буфера =/
как вот это сделать???
OCR1BH = ((две последние цифры из буфера)*2)*10.23;

тьфу, где там ваш 123avr, пойду читать =/


ещё, если шим от 0% до 20% примерно
моторы вобще никак не крутятса
надо либо  в МК делать ограничение
либо потом в программе на кпк подстраивать диапазон

Vooon » 05 май 2007, 00:21

блин, иди почитай http://nix-06.nm.ru/ там довольно хороше было про шим рассказано... сам правдо уже подзабыл  :roll:
и еще это... попробуй ваку как интерфейс :) мне понравилось :)

Myp » 05 май 2007, 00:24

ваку чё?

Myp » 05 май 2007, 00:26

проблема у меня не с шимом
проблема в том как взять из буфера 2 числа и записать их в OCR1B
не по очереди же их туда записывать...

в  одно место записать  2 числа...
чёто походу придётся сначала из 2х чисел сделать одно а уже потом его писать в OCR1B

Vooon » 05 май 2007, 01:59

Myp писал(а):в  одно место записать  2 числа...
чёто походу придётся сначала из 2х чисел сделать одно а уже потом его писать в OCR1B


Запутал ты меня...  :roll: объясни для чего это надо.
Вака - это я так обозвал wake :) уж больно нравится мне этот протокол, удобно. :)

Myp » 05 май 2007, 11:55

ну короче  у меня в буфере[3] лежит 3  символа
например вот такие  R 2 5

вот эти 2 последних символа 2 и 5 по моей идее составляют число 25
вот это число 25нуно умножить на два(так  надо) и умножить на 10.23
и нужно записать результат одним махом в регистр(кажеццо) шима

вот проблема из 2х символов 2 и 5 сделать обычное 25

Сергей » 05 май 2007, 12:21

ээ Мур, это первый класс по Си: юзай atoi -> http://www.msdn.com

Myp » 05 май 2007, 14:41

о ужос
мне такуюхрень нуно а вы меня мсдн качать посылаете...  =/


нет чтоб пояснить по  человечески
подключи библу станндартную в проект
#include <stdlib.h>

и юзай там
atoi(char *str);

Код: Выделить всёРазвернуть
NAME

   atoi - convert a string to an integer

SYNOPSIS

   #include <stdlib.h>

   int atoi(const char *str);

DESCRIPTION

   [CX] [Option Start] The functionality described on this reference page is aligned with the ISO C standard. Any conflict between the requirements described here and the ISO C standard is unintentional. This volume of IEEE Std 1003.1-2001 defers to the ISO C standard. [Option End]

   The call atoi(str) shall be equivalent to:

   (int) strtol(str, (char **)NULL, 10)

   except that the handling of errors may differ. If the value cannot be represented, the behavior is undefined.

RETURN VALUE

   The atoi() function shall return the converted value if the value can be represented.

The following sections are informative.
EXAMPLES

   Converting an Argument

   The following example checks for proper usage of the program. If there is an argument and the decimal conversion of this argument (obtained using atoi()) is greater than 0, then the program has a valid number of minutes to wait for an event.

   #include <stdlib.h>
   #include <stdio.h>
   ...
   int minutes_to_event;
   ...
   if (argc < 2 || ((minutes_to_event = atoi (argv[1]))) <= 0) {
      fprintf(stderr, "Usage: %s minutes\n", argv[0]); exit(1);
   }
   ...

APPLICATION USAGE

   The atoi() function is subsumed by strtol() but is retained because it is used extensively in existing code. If the number is not known to be in range, strtol() should be used because atoi() is not required to perform any error checking.

Myp » 05 май 2007, 15:00

тока всё равно непонятно
у меня в массиве хранитсо 2 символа...
мне их надо из массива достать и  сделать из них строку ???
а потом строку  с помощью atoi перевести в число???


Rambler\'s Top100 Mail.ru counter