Вход

Просмотр полной версии : Виджет для Remote steering wheel control


Страницы : 1 [2]

ali_vlad
09.04.2016, 23:33
в видео чувак лампочкой с телефона управляет. это передача?
Вы сами попробуйте подключить к телефону по USB, а потом советуйте. Это приложение подразумевает загрузку определенного скетча и еще много чего. Одним словом это совсем не то.

oleg707
10.04.2016, 00:59
Вы сами попробуйте подключить к телефону по USB, а потом советуйте. Это приложение подразумевает загрузку определенного скетча и еще много чего. Одним словом это совсем не то.

да я много чего пробовал как бы. Чуваки дело говорят в видео, как надобность придёт - обязательно займусь. Пока нету на это времени.

ali_vlad
10.04.2016, 13:11
да я много чего пробовал как бы. Чуваки дело говорят в видео, как надобность придёт - обязательно займусь. Пока нету на это времени.

То ли я тупой, то ли телефон тупой, то ли ардуина тупая. Не дружатся они никак. К тому же на видео и в реалии программы разные. Короче - это не то, что мне надо.

DelleTenebre
10.04.2016, 16:38
а с Ардуино УНО ваш SerialManager тоже ведь должен работать ?
Теоретически должен, но мне на чем проверить. В настройках разве что убрать галочку с DTR.
Вот так:
Supported and tested:

FT232R
CDC/ACM serial services
CP2102
(All Arduino devices we know of use one of these two drivers, and are supported.)

Possibly supported (untested):

FT232H
FT2232D
FT2432H

Serg-Zmuh
10.04.2016, 18:25
Теоретически должен, но мне на чем проверить. В настройках разве что убрать галочку с DTR.
Вот так:

у мня UNa наверно левая ,да к тому же глючило ее временами типа подвисания и т.д.,
сейчас не скажу на каком она драйвере -завтра гляну.
в общем нашел сегодня время и в машине поменял сегодня на Леонарду :smile1:
и настроил на USB SerialManager - буду кататься тестить :roll:

vasilij_c
10.04.2016, 19:06
Мне нужен виджет, работающий не на приём, а на передачу.

тебе нужен serial Terminal
типа таких тыц1 (https://play.google.com/store/apps/details?id=nl.bernardbekker.simplemonitor&hl=ru) тыц2 (https://play.google.com/store/apps/details?id=com.devmel.apps.serialterminal&hl=ru)

ali_vlad
10.04.2016, 21:48
тебе нужен serial Terminal
типа таких тыц1 (https://play.google.com/store/apps/details?id=nl.bernardbekker.simplemonitor&hl=ru) тыц2 (https://play.google.com/store/apps/details?id=com.devmel.apps.serialterminal&hl=ru)

Это да, это я знаю, это работает. Но это как-бы только половина того, что мне надо. Мне бы к такому терминалу виджет с командой, нажал-послалось. За рулем на ходу набирать команду в терминале... это карписишник 89 левела. У меня пока 1й левел, я так не умею.

Serg-Zmuh
11.04.2016, 04:04
у мня UNa наверно левая ,да к тому же глючило ее временами типа подвисания и т.д.,
сейчас не скажу на каком она драйвере -завтра гляну.
в общем нашел сегодня время и в машине поменял сегодня на Леонарду :smile1:
и настроил на USB SerialManager - буду кататься тестить :roll:

посмотрел я что у мну за UNa ,на которой SM не заводится,вот:
- UNO R3 на контролере mega16u2 ,на вид - китайская копия :secret:
работала в машине год в связке с блюпуп-модулем...

vasilij_c
11.04.2016, 16:40
.. виджет с командой, нажал-послалось... .
ну, такое только сам. в таскере создавай что надо. выводить в порт - run shell - echo "посылаемая строка" > /dev/ttyACM0

DelleTenebre
12.04.2016, 10:30
В версию SerialManager 1.3 добавил настройки Data Bits, Stop Bits, Parity. Возможно это поможет решить проблемы с Uno. Лично мне вышеназванные настройки ни о чём не говорят и их комбинации, возможно, будут бесполезными.

ali_vlad, в следующую версию добавлю передачу данных (надеюсь :)).

Serg-Zmuh
12.04.2016, 17:36
В версию SerialManager 1.3 добавил настройки Data Bits, Stop Bits, Parity. Возможно это поможет решить проблемы с Uno. Лично мне вышеназванные настройки ни о чём не говорят и их комбинации, возможно, будут бесполезными.

ali_vlad, в следующую версию добавлю передачу данных (надеюсь :)).

спасибо ! завтра по-эксперементирую

поэкперементировал с UNOй ....
если интересно то вот что в logcat'е творится(в конце вложение) ,может пригодится инфа для будущего улучшения SM )

теперь вопрос другой ..., можно? вернее просьба :blush:
как в скетч (который сейчас работает норм у мня (http://www.pccar.ru/showpost.php?p=357347&postcount=240))
добавить измерения бортового напряжения в диапазоне от 0 до 30 В?
много что в инете перечитал ,нашел уроки что и как но как совместить добавить еще не понимаю пока ...
вычитал что для более-менее нормального мониторинга бортового напряжения используются скетч с использованием опорного напряжения
Ардуины 1.1 вольта ,
вот пример Скетча:

/*--------------------------------------------------------------
Program: volt_measure

Description: Reads value on analog input A2 and calculates
the voltage assuming that a voltage divider
network on the pin divides by 11.

Hardware: Arduino Uno with voltage divider on A2.

Software: Developed using Arduino 1.0.5 software
Should be compatible with Arduino 1.0 +

Date: 22 May 2013

Author: W.A. Smith, http://startingelectronics.com
--------------------------------------------------------------*/
#include <LiquidCrystal.h>

// R1 R2
// Vin ----/\/\/\----*----/\/\/\---- GND
// |
// | Vout
// |
// ANALOG PIN
// * Vin : input voltage (the voltage we try to meter)
// * Vmax : the maximum value of the input voltage
// * Vout : the output voltage (the Vin remapped to 0 .. 1.1V)

// Choose R1 and R2 CAREFULLY according to the following rule:

// R1 = R2 x 1.1 / (Vmax - 1.1)
// R2 = R1 x (Vmax - 1.1) / 1.1

// A typical configuration is R1 = 1k and R2 = 4k. It assumes Vmax = 5.5V.

// number of analog samples to take per reading
#define NUM_SAMPLES 10

int sum = 0; // sum of samples taken
unsigned char sample_count = 0; // current sample number
float voltage = 0.0; // calculated voltage

LiquidCrystal lcd(12, 11, 5, 4, 3, 2);

void setup()
{
Serial.begin(9600);
}

void loop()
{
// take a number of analog samples and add them up
while (sample_count < NUM_SAMPLES) {
sum += analogRead(A2);
sample_count++;
delay(100);
}
// calculate the voltage
// use 5.0 for a 5.0V ADC reference voltage
// 5.015V is the calibrated reference voltage
voltage = ((float)sum / (float)NUM_SAMPLES * 5.015) / 1024.0;
// send voltage for display on Serial Monitor
// voltage multiplied by 11 when using voltage divider that
// divides by 11. 11.132 is the calibrated voltage divide
// value
lcd.begin(16, 2);
lcd.print(" Volt= ");
lcd.print(voltage * 9.1);
lcd.print("V");

Serial.print(voltage * 9.1);
Serial.println (" V");

sample_count = 0;
sum = 0;
}

вот еще есть проэкт (https://github.com/tim4dev/arduino/tree/master/sensors)
ну тут сделано с выводом на экран ЛСД ,мне этого ,понятно, не надо .
с делителем напряжения и фильтрами мне все понятно вроде ,и как отлаживать в код тоже...
делитель вот такой хочу применить

нужна помощь именно по внедрению типа этого скетча в мой с выводом
в serial типа "CHG" или "voltage" там и сам если что поправлю :blush:

Максимэ
17.04.2016, 18:36
Как-то так!
https://cloclo27.datacloudmail.ru/weblink/thumb/xw1/sfNQ/VNCKckHk5/image%20-%20%D1%81%20%D1%8D%D1%84%D1%84%D0%B5%D0%BA%D1%82%D 0%B0%D0%BC%D0%B8.jpeg?x-email=kuzakoff%40mail.ru
#include <OneWire.h>
#include <DallasTemperature.h>
char incomingByte;
int analogInput = 0;
float vout = 0.0;
float vin = 0.0;
float R1 = 100000.0;
float R2 = 10000.0;
int value = 0;
OneWire OW_tempa(9);
OneWire OW_tempb(10);
OneWire OW_tempc(11);
DallasTemperature tempa(&OW_tempa);
DallasTemperature tempb(&OW_tempb);
DallasTemperature tempc(&OW_tempc);
DeviceAddress tempaAddress, tempbAddress, tempcAddress;
void setup(void){
Serial.begin(9600);
pinMode(analogInput,INPUT);
tempa.begin();
tempb.begin();
tempc.begin();
}
void loop(void){
value = analogRead(analogInput);
vout = (value*5.0)/1024.0;
vin = vout/(R2/(R1+R2));
if(vin<0.09){
vin = 0.0;
}
tempa.requestTemperatures();
delay(700);
Serial.print("<InDoor:");
if ( !tempa.getAddress(tempaAddress,0)){
Serial.print("0");
}else{
Serial.print(tempa.getTempCByIndex(0),1);
}
Serial.println(">");
tempb.requestTemperatures();
delay(700);
Serial.print("<OutDoor:");
if ( !tempb.getAddress(tempbAddress,0)){
Serial.print("0");
}else{
Serial.print(tempb.getTempCByIndex(0),1);
}
Serial.println(">");
tempc.requestTemperatures();
delay(700);
Serial.print("<Engine:");
if ( !tempc.getAddress(tempcAddress,0)){
Serial.print("0");
}else{
Serial.print(tempc.getTempCByIndex(0),1);
}
Serial.println(">");
delay(700);
Serial.print("<Voltage:");
Serial.print(vin,2);
Serial.println(">");
}

Serg-Zmuh
18.04.2016, 10:47
Максимэ

СПС...
заработало и показывает все !

только точность страдает ...., надо скетч с опорным напряжением все таки делать ,у мня БП на хаб в машине не очень ,наверно поэтому так ...

и на этом большое спасибо !

P.S. вот я пытаюсь вникнуть как скетч делается ... ,вроде не совсем уж
тупой и компами и с паяльником уже лет 20 как , а непойму нифига,
видать нет жилки этой программерской что ли .... :blush:
А просить тут и клянчить уже неудобно ....

Tommy_Gun
18.04.2016, 14:06
Максимэ

СПС...
заработало и показывает все !

только точность страдает ...., надо скетч с опорным напряжением все таки делать ,у мня БП на хаб в машине не очень ,наверно поэтому так ...

и на этом большое спасибо !

P.S. вот я пытаюсь вникнуть как скетч делается ... ,вроде не совсем уж
тупой и компами и с паяльником уже лет 20 как , а непойму нифига,
видать нет жилки этой программерской что ли .... :blush:
А просить тут и клянчить уже неудобно ....

Для точности отличная штука - INA219 (http://arduino.ru/forum/apparatnye-voprosy/mini-obzor-monitora-toka-ina219-s-vykhodom-i2c). Без труда разобрался. Побаловался и заказал еще прозапас. Скетчь простой до безобразия. Правда INA219 до 26 вольт всего. Но есть еще INA 226. Та до 36В.

oleg707
18.04.2016, 14:09
Максимэ

СПС...
заработало и показывает все !

только точность страдает ...., надо скетч с опорным напряжением все таки делать ,у мня БП на хаб в машине не очень ,наверно поэтому так ...

и на этом большое спасибо !

P.S. вот я пытаюсь вникнуть как скетч делается ... ,вроде не совсем уж
тупой и компами и с паяльником уже лет 20 как , а непойму нифига,
видать нет жилки этой программерской что ли .... :blush:
А просить тут и клянчить уже неудобно ....
попробуй измерения от внутреннего опроного напряжения мерять (1,1B), либо от втроенной кренки (5,0 В) на опорный (REF) пин подпаяться (должен быть <= питанию).
Можешь подсмотреть решение у меня в блоке питания, я там напруги меряю, точность +-0,03. Про 1,1 опорку в 3й версии в скетче описание.

fedor5800
24.06.2016, 19:19
друзья подскажите по теме самой проги Remote steering wheel control, непонятна схема подключения https://lh5.googleusercontent.com/-1l-QMr4juBA/UvPyDFjD2TI/AAAAAAAADFI/XgjHRb85l4s/w793-h772-no/arduino_mini_pinout.png Получается там объеденены входы А0 и D13?
И резистор подтяжки идет на массу?
Так и есть, подключил вместе аналог вход и цифровой, и схема заработала.

mihrun79
06.04.2017, 19:56
Люди добрые,если что,извиняйте,но по Steering wheel control вопрос: там через таскер шоткатами можно рулить,а как в самом таскер создать задачу,которая будет отрабатывать кнопки(сочетание кнопок) клавиатуры?Помогите советом!