ВАЗ 2111 и Дуина

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Имееться приборка ваз 2111 нового образца ЕВРО и arduino uno Собственно как крутить тахометром и спидометром Если я знаю что тахометром через pwm но вот какая частота и т.д Заранее спасибо

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

ссылку хоть на приблорку привел бы

mrjinatan
Offline
Зарегистрирован: 15.11.2014
jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

а зачем? отдельные свои датчики ставить и получить почти тоже самое?

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Нее Мне надо крутить приборкой с пк

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

а вот оно что)) зачем? просто интересно

mrjinatan
Offline
Зарегистрирован: 15.11.2014

jeka_tm пишет:

а вот оно что)) зачем? просто интересно


Автосимуляторы

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

прикольно. насчет pwm. частота не так уж сильно критична, но лучше конечно повысить, чем использовать 490гц

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

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Ммм,как это сделать я в pwm полный ноль Если более менее освоил прием из serial и выполнение клманды по букве из него то в pwm ноль полный

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

возьми светодиод с резистором и балуйся. станет все понятно

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Это я знаю А вот как с переменным резюком Не знаю

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

http://arduino.ru/Reference/AnalogRead

почитай. или ты резистор не знаешь как подключить?

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Как заставить дуину пускать pwm через резистор

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013
roman2712@mail.ru
Offline
Зарегистрирован: 16.01.2014

А с каких пор тахометры по ШИМ ? ... Там вроде как всегда счет был по частоте импульсов...

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Разобрал приборку а там pic какой-то может в него что нибудь зашить?

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Насколько я знаю только спидометр по импульсам

jeka_tm
jeka_tm аватар
Offline
Зарегистрирован: 19.05.2013

кстати да. наверно надо использовать функцию tone. короче надо пробовать

в пик не надо зашивать. использовать как есть для начала

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Ну приборка пока на машине стоит у отца Просто его феррум на прошивке сейчас Вообще на следуйшей неделе попробую

Мишаня
Offline
Зарегистрирован: 12.10.2014

mrjinatan, бьюсь с подобной проблеммой. Под какой сим делаеться проект?

mrjinatan
Offline
Зарегистрирован: 15.11.2014

Под все что держит x-sim

Мишаня
Offline
Зарегистрирован: 12.10.2014

mrjinatan, ну тут я тебе помогу. 

http://www.technikprojekte.de/Projekte.php?src=Tacho

у меня не получилось запустить, как в видео.

Мишаня
Offline
Зарегистрирован: 12.10.2014

jeka_tm, можете направить мысль в нужное русло, http://arduino.ru/forum/obshchii/podklyuchenie-pribornoi-paneli-k-pk

mrjinatan
Offline
Зарегистрирован: 15.11.2014
01int ledPin = 6;   
02 
03  
04void setup()
05{
06    pinMode(ledPin, OUTPUT);     
07}
08  
09void loop()
10{
11     tone(ledPin,320, 5);
12}

Данный скетч кладет стрелку до 200км

mrjinatan
Offline
Зарегистрирован: 15.11.2014
001/*
002 Скетч управления приборкой ваз 2171 vdo С компьютера
003Пин 6 подключить на провод датчика скорости
004*/
005 
006 
007 
008 
009 
010char val;  // Variable to receive data from the serial port
011 
012void setup() {
013 
014  // initialize the digital pins as output
015  pinMode(ledPin, OUTPUT);
016   
017 
018  Serial.begin(9600);   // Start serial communication at 9600bps
019}
020 
021 
022// Fordward action
023void go_forward() {
024  tone(6,31,50000000);
025}
026 
027// Stop Forward action
028void stop_go_forward() {
029 tone(6,45,500000000);
030}
031 
032// Reverse action
033void go_reverse() {
034  tone(6,60,500000000);
035}
036 
037// Stop Reverse action
038void stop_go_reverse() {
039   tone(6,75,500000000);
040}
041 
042// Turbo action
043void go_spiker() {
044  tone(6,93,500000000);
045}
046 
047// Stop Turbo action
048void stop_go_spiker() {
049   tone(6,109,500000000);
050}
051 
052// Left action
053void go_left() {
054    tone(6,126,500000000);  
055}
056 
057// Right action
058void go_right() {
059  tone(6,142,500000000);
060}
061 
062// Stop turn action
063void stop_turn() {
064  tone(6,158,500000000);
065}
066 
067// Stop car
068void stop_car() {
069  tone(6,175,500000000);
070}
071 
072// Short Lights ON
073void lights_on() {
074  tone(6,191,500000000);
075}
076 
077// Short Lights OFF
078void lights_off() {
079 tone(6,206,500000000);
080}
081 
082// Long Lights ON
083void long_lights_on() {
084  tone(6,223,500000000);
085}
086 
087// Long Lights OFF
088void long_lights_off() {
089  tone(6,239,500000000);
090}
091 
092// Reverse Lights ON
093void back_lights_on() {
094 tone(6,255,500000000);
095}
096 
097// Reverse Lights OFF
098void back_lights_off() {
099  tone(6,270,500000000);
100}
101 
102void q() {
103  tone(6,286,500000000);
104}
105 
106void w() {
107  tone(6,302,500000000);
108}
109void e() {
110  tone(6,318,500000000);
111}
112void r() {
113  tone(6,0,500000000);
114}
115   
116// Read serial port and perform command
117void performCommand() {
118  if (Serial.available()) {
119    val = Serial.read();
120  }
121    if (val == '1') { // Forward
122      go_forward();
123    } else if (val == '2') { // Stop Forward
124      stop_go_forward();
125    } else if (val == '3') { // Backward
126      go_reverse();
127    } else if (val == '4') { // Stop Backward
128      stop_go_reverse();
129    } else if (val == '5') { // Turbo
130      go_spiker();
131    } else if (val == '6') { // Stop Turbo
132      stop_go_spiker();
133    } else if (val == '8') { // Right
134      go_right();
135    } else if (val == '7') { // Left
136      go_left();
137    } else if (val == '9') { // Stop Turn
138      stop_turn();
139    } else if (val == 'q') { // Stop
140      stop_car();
141    } else if (val == 'w') { // Short Lights
142      lights_on();
143    } else if (val == 'e') { // Stop Short Lights
144      lights_off();
145    } else if (val == 'r') { // Long Lights
146      long_lights_on();
147    } else if (val == 't') { // Stop Long Lights
148      long_lights_off();
149    } else if (val == 'y') { // Stop Long Lights
150      back_lights_on();
151    } else if (val == 'u') { // Stop Long Lights
152      back_lights_off();
153    } else if (val == 'i') { // Stop Long Lights
154      q();
155    }
156       else if (val == 'o') { // Stop Long Lights
157      w();
158    }
159       else if (val == 'p') { // Stop Long Lights
160      e();
161    }
162       else if (val == 'a') { // Stop Long Lights
163      r();
164    }
165   
166}
167 
168 
169void loop() {
170  performCommand();
171}

Скетч на скорую руку для управления спидометром Скорость в терминале 9600

цифра 1 20км и так далее до 9

от q до p 100-200км

кнопка a 0км

Мишаня
Offline
Зарегистрирован: 12.10.2014

а откуда инфа береться для скетча?

 

mrjinatan
Offline
Зарегистрирован: 15.11.2014

За основу как брать данные из сериал взят скетч mobobtcar остальное методом подмора частоты tone

mrjinatan
Offline
Зарегистрирован: 15.11.2014

охх спасибо Сегодня ночью запилю под свою приборку