Технический форум по робототехнике.
CiSi » 17 янв 2013, 17:37
Duhas писал(а):настройки порта вводить надо в программе открывающей порт, а не в диспетчере устройств.
юзать лучше путти. настройки в путти поставить правильные и сохранить конфигурацию.
В программах то же меняю.
про пути не понял. что за настройки в пупи?
Duhas » 17 янв 2013, 17:49
настройки порта выставить там. сохранить настройки, обозвав как нить... потом мона запускать с разу с выставленными настройками дописам -load имя настройки... если мне память не изменяет
CiSi » 17 янв 2013, 17:50
это в терминале?
Angel71 » 17 янв 2013, 18:19
да, Duhas за терминал писал. только он про
putty ![Smile :)](http://roboforum.ru/images/smilies/smile.gif)
софтина очень полезная, имхо маст хэв.
CiSi » 17 янв 2013, 18:38
у меня почемуто не соединяется, хотя все параметры в закладке serial выставил. что то еще надо настроить?
Добавлено спустя 16 минут 48 секунд:
соединился. но особой разници пока не вижу с гипертерминалом.
контроллер шлет попрежнему чушь, без команды, и не шъется.
CiSi » 17 янв 2013, 23:06
Реально не понял что сделал, но заработало! )))
во включенном состоянии поменял местами джамперы уарт-а на S, а потом обратно в положение М
и все.
Добавлено спустя 8 минут 8 секунд:
А вот терминал orfa, все равно зависает ( но уже соединившись с модулем
- Вложения
-
![терминал орфа.png (46.38 КиБ) Просмотров: 6647 терминал орфа.png](./download/file.php?id=26750&t=1&style=9&sid=d1a76af849d9ce0c038a02e3a4ca40f0)
-
![терминал.png (43.67 КиБ) Просмотров: 6613 терминал.png](./download/file.php?id=26749&t=1&style=9&sid=d1a76af849d9ce0c038a02e3a4ca40f0)
=DeaD= » 18 янв 2013, 10:10
CiSi писал(а):Реально не понял что сделал, но заработало! )))
во включенном состоянии поменял местами джамперы уарт-а на S, а потом обратно в положение М
и все.
Очуметь, плохой контакт у джампера - это что-то новое в моей практике
![Smile :)](http://roboforum.ru/images/smilies/smile.gif)
CiSi писал(а):А вот терминал orfa, все равно зависает ( но уже соединившись с модулем
Могу посоветовать только исходники+отладка.
CiSi » 18 янв 2013, 10:21
=DeaD= писал(а):CiSi писал(а):Реально не понял что сделал, но заработало! )))
во включенном состоянии поменял местами джамперы уарт-а на S, а потом обратно в положение М
и все.
Очуметь, плохой контакт у джампера - это что-то новое в моей практике
![Smile :)](http://roboforum.ru/images/smilies/smile.gif)
Да, было такое предположение.
=DeaD= писал(а):CiSi писал(а):А вот терминал orfa, все равно зависает ( но уже соединившись с модулем
Могу посоветовать только исходники+отладка.
Планирую свой писать. Сейчас с OpenCV разбираюсь (как же без камеры на борту
![Smile :)](http://roboforum.ru/images/smilies/smile.gif)
).
Angel71 » 16 янв 2015, 15:13
вместо реле можно на будущие переделки почискать что-то на подобии
bts7960. на меньшие токи можно немного и подешевле платку подыскать, хотя в этой запас приличный.
sned » 16 янв 2015, 21:58
Вопрос по bts7960.Просветите пожалуйста как она управляется и что может, а то в описании не пойму.
CiSi » 20 янв 2015, 12:10
CiSi » 08 фев 2015, 23:43
Не могу решить одну проблему, дело скорей всего в программировании. Ошибка похоже в следующем: переполняется буфер обмена, ошибка (WriteFile) и плата перестает реагировать на команды с пк, а ошибка начинает вылетать после нажатия на любую из команд. Даже ком порт не отключается, приходится вырубать программку через диспетчер задач. после ее повторного запуска она не сразу конектится с ком портом.
Пробывал и входящий и исходящий буфер очищать, ошибка все равно вылезает. Очищаю буфер после получения ответа от платы.
Контроллер питается от бп или аккумулятора в 12В через стабилизатор 5В.
- Код: Выделить всё • Развернуть
var
Form1: TForm1;
str: string;
speed: string;
implementation
{$R *.dfm}
procedure TForm1.ApplicationEvents1ShortCut(var Msg: TWMKey;
var Handled: Boolean);
Var
q: integer;
begin
if getasynckeystate(vk_up)<0{(getasynckeystate(17)<0) and (getasynckeystate(38)<0)} then begin
//Machine.TraverseTop(SpeedFreeMov); вперед
speed:=Labelededit1.Text;
str:='DrvLR='+speed+','+speed;
str := Str + #13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
end;
if getasynckeystate(vk_down)<0{(getasynckeystate(17)<0) and (getasynckeystate(40)<0)} then begin
// Machine.TraverseBottom(SpeedFreeMov); назад
speed:='-'+Labelededit1.Text;
str:='DrvLR='+speed+','+speed;
str := Str + #13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
end;
if getasynckeystate(vk_left)<0{(getasynckeystate(17)<0) and (getasynckeystate(40)<0)} then begin
// Machine.TraverseBottom(SpeedFreeMov); Лево
speed:=Labelededit1.Text;
str:='DrvLR=-'+speed+','+speed;
str := Str + #13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
end;
if getasynckeystate(vk_right)<0{(getasynckeystate(17)<0) and (getasynckeystate(40)<0)} then begin
// Machine.TraverseBottom(SpeedFreeMov); Право
speed:=Labelededit1.Text;
str:='DrvLR='+speed+',-'+speed;
str := Str + #13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
end;
if getasynckeystate(32)<0{(getasynckeystate(17)<0) and (getasynckeystate(40)<0)} then begin
// Machine.TraverseBottom(SpeedFreeMov); стоп
str:='DrvLR=0,0';
Str := Str + #13#10;
ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str +'...'+Inttostr(q);
end;
end;
procedure TForm1.Button10Click(Sender: TObject); //влево
begin
speed:=Labelededit1.Text;
str:='DrvLR=-'+speed+','+speed;
str := Str +#13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
Sleep(100);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Form1.ComPort1.ShowSetupDialog;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if ComPort1.Connected then
ComPort1.Close
else
ComPort1.Open;
end;
procedure TForm1.Button3Click(Sender: TObject); //версия прошивки
begin
str:='V';
Str := Str + #13#10;
Form1.ComPort1.WriteStr(str);
//Memo1.Lines.Add(str);
//Memo1.Lines.Text:=str;
Memo1.Text := Memo1.Text + Str;
end;
procedure TForm1.Button4Click(Sender: TObject); // закрыть
begin
ComPort1.Free;
Form1.ComPort1.Close;
end;
procedure TForm1.Button5Click(Sender: TObject);
begin
Memo1.Lines.Clear;
end;
procedure TForm1.Button6Click(Sender: TObject); // stop
begin
str:='DrvLR=0,0';
Str := Str +#13#10;
ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
Sleep(100);
end;
procedure TForm1.Button7Click(Sender: TObject); //вперед
begin
speed:=Labelededit1.Text;
str:='DrvLR='+speed+','+speed;
str := Str +#13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
Sleep(100);
end;
procedure TForm1.Button8Click(Sender: TObject); //назад
begin
speed:='-'+Labelededit1.Text;
str:='DrvLR='+speed+','+speed;
str := Str +#13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
Sleep(100);
end;
procedure TForm1.Button9Click(Sender: TObject); //вправо
begin
speed:=Labelededit1.Text;
str:='DrvLR='+speed+',-'+speed;
str := Str +#13#10;
Form1.ComPort1.WriteStr(str);
Memo1.Text := Memo1.Text + Str;
Sleep(100);
end;
procedure TForm1.ComPort1RxChar(Sender: TObject; Count: Integer);
begin
ComPort1.ReadStr(Str, count);
Memo1.Lines.Add(str);
//PurgeComm(ComPort1.Handle, PURGE_TXABORT or PURGE_RXABORT or PURGE_TXCLEAR or PURGE_RXCLEAR);
end;
procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); // закрыть
begin
Form1.ComPort1.Close;
end;
end.
CiSi » 30 ноя 2016, 20:29
MegaBIZON » 01 дек 2016, 15:46
не устаю радоваться названию )))