[OT] snimac vacky v aute
Jaroslav Buchta
jaroslav.buchta na hascomp.cz
Neděle Listopad 10 10:36:44 CET 2024
Tak jsem vyrobil vlastni cidlo, jak jsem nasel v odborne literature tak
Halluv snimac s vychylenym efektem, proste jsem vzal linearni snimac a k
nemu dal magnet, to podlozil sroubem (vse ve vytistenem pouzdru) a pro
sichr je ta dutina zalita epoxidem.
Cekal jsem vic, signal ma rozsah 1-4V, uzitecny je cca 100mV.
Udelal jsem prvni verzi s prostym komparatorem, to nejak fungovalo a
nastaveni dost kriticke...
Takze jsem se nebal jit do chytreho snimace, kdyz jsem nasel kit
ATTINY416, aby se to automaticky adaptovalo, jen kousek chybi k umele
inteligenci ale do 4kB flash se zase uplne zazraky nevejdou, prekvapilo
me uz, ze tam je printf, adc, seriak a 64bitova aritmetika i kdyz uz
musi byt optimalizace na velikost kodu.
Zatim 2 pokusne jizdy OK, uvidime, co udela teplota.Zatim trosku dost
bastl ;-) Puvodni snimac a chladici sprej vozim s sebou, da se to za par
minut vymenit a studeny jeste funguje, jak jsem psal, staci nastartovat
a pak uz neni potreba.
https://www.hascomp.cz/snimac2.jpg
a kod:
#include <atmel_start.h>
#include <stdio.h>
adc_result_t adc;
uint16_t adc_cnt;
uint64_t max_v;
uint64_t min_v;
bool adc_initialized = false;
bool pulse_st = false;
#define FILT_UP 10
#define FILT_DN 300
void adc_service ()
{
adc = ADC_0_get_conversion(ADC_MUXPOS_AIN11_gc) >> 6;
adc_cnt++;
uint64_t adc_curr = adc;
adc_curr <<= 32;
adc_curr |= 0x80000000; // 32.32 fixed point extension
if (!adc_initialized)
{
max_v = adc_curr;
min_v = adc_curr;
adc_initialized = true;
}
if (adc_curr > max_v)
{
max_v = (max_v*(FILT_UP-1) + adc_curr)/FILT_UP;
}
else
{
max_v = (max_v*(FILT_DN-1) + adc_curr)/FILT_DN;
}
if (adc_curr < min_v)
{
min_v = (min_v*(FILT_UP-1) + adc_curr)/FILT_UP;
}
else
{
min_v = (min_v*(FILT_DN-1) + adc_curr)/FILT_DN;
}
if (max_v - min_v > 10*(1ULL << 32))
{
if (pulse_st)
{
if (adc_curr < min_v + (max_v - min_v)/3)
{
GPIO_PULSE_set_level(false);
pulse_st = false;
}
}
else
{
if (adc_curr > max_v - (max_v - min_v)/3)
{
GPIO_PULSE_set_level(true);
pulse_st = true;
}
}
}
else
{
GPIO_PULSE_set_level(false);
pulse_st = false;
}
}
void delay()
{
volatile uint16_t i;
for (i=0; i<200; i++)
{
adc_service();
}
}
int i;
int main(void)
{
/* Initializes MCU, drivers and middleware */
// memset (0x3f00, 0xaa, 256);
atmel_start_init();
/* Replace with your application code */
while (1) {
GPIO_LED_set_level(true);
delay();
GPIO_LED_set_level(false);
delay();
printf ("ADC %04x %04x %04x\r\n", adc, (uint16_t)(min_v>>32),
(uint16_t)(max_v>>32));
// USART_0_write('x');
}
}
Dne 04.11.2024 v 20:49 Jaroslav Buchta napsal(a):
> Tak dnes jsem si s tim hral, kryt rozvodu jsem sundal a snima to
> bokem, kolo ma na pulce obvodu dovnitr vystupek, asi 2mm.
> Cidlo skutecne selhava, bud tam je symetricky 0/12V obdelnik nebo
> stabilne nejakych 8V, reaguje na poklep.
>
> Objednal jsem za par stovek 2 vizualne zpusobila cidla, ktera by se
> snad dala nejak znasilnit a pro sichr linearni hallovu sondu, ke ktere
> dam komparator, magnet a podlozim to plechem. To by asi mohlo fungovat
> po vhodnem nastaveni prahu trimrem?
>
>
>
> Dne 12.10.2024 v 20:30 Jaroslav Buchta napsal(a):
>> Dik za postrehy,
>> signal a piny muzu omerit, jen ted doma nemam osciloskop, to cidlo
>> vetsinou funguje.
>> Jak to je mechanicky zatim nevim, musel bych podlozit motor a sundat
>> drzak, aby sel sundat kryt rozvodu a kola vacky.
>> Aktualne by me asi nejvic zajimalo, jak rychle reaguji na zmeny bezne
>> indukcni snimace za par stovek, to by asi byla nejjednodussi cesta,
>> vytisknout nejaky mechanicky adapter, udelat prizpusobeni polarity a
>> urovni a hotovo...
>>
>>
>> Dne 12.10.2024 v 19:52 Jiří Majzlík Nemeček napsal(a):
>>>
>>> U mého Nissanu je tam hallovka + nějaká elektronika. Na špičce
>>> magnet. Všechno zalité v pryskyřici, netečné k mně dostupným
>>> rozpouštědlům. Vadný snímač na vačkovce se mi choval přesně jak
>>> popisujete. Bez něj nešlo nastartovat, jeho odpojení za běhu pak už
>>> nemělo vliv.
>>>
>>> Zkuste najít dílenský manuál k tomu motoru, měl by tam být pinout a
>>> očekávaný správný průběh signálu z čidla.
>>>
>>> Já jsem se s tím dost natrápil, přestože ty moje čidla se dají
>>> normálně koupit. V průběhu let jsem je měnil několikrát, ale ať jsem
>>> koupil originál Denso, nebo to nejlevnější z Ali (např.
>>> https://vi.aliexpress.com/item/1005004054605529.html), ke všem jsem
>>> musel dobastlit invertor. A žádné mi nevydrželo déle než pár let.
>>> Teď o prázdninách to zdechlo zase, ale protože to auto už má i další
>>> problémy, které nemám sílu řešit, půjde zřejmě do šrotu.
>>>
>>> No ale zpět. Co jsem tak zkoumal průběhy, výstup čidla u toho
>>> Nissanu je pravoúhlý signál s amplitudou 12 V a odpovídá tomu, jak
>>> se před čidlem míhají výstupky na kódovém kolečku vačkovky. Když
>>> jsem to kdysi zkoumal, dospěl jsem k závěru, že to je standardní
>>> řešení napříč mnoha výrobci. 2 piny - indukční čidlo, 3 piny -
>>> napájení, zem, signál. S tím, že některá čidla mají napájení jen 5V
>>> (čemuž odpovídá i výstupní amplituda) a některá čidla mají výstup
>>> aktivní v L, jiná v H.
>>>
>>> Tolik má nepříliš objevná zjištění.
>>>
>>> Kdybych to čidlo nemohl koupit, zkusil bych sehnat takové, které mi
>>> tam bude mechanicky pasovat a případné detaily (12 vs 5 V, inverze
>>> signálu) bych dořešil pár tranzistory na univerzální DPS.
>>>
>>> Mimochodem, jaký je rok výroby toho Vašeho Meganu?
>>>
>>> JMN
>>>
>>>
>>> Dne 12.10.2024 v 17:46 Jaroslav Buchta napsal(a):
>>>>
>>>> Vi nekdo, jak je to obvykle udelane, kdyz se ruzne pise, ze je tam
>>>> Hall sensor?
>>>>
>>>> Je to tento Czujnik Położenia Wału Megane 2.0 IDE 8200156362
>>>> Oryginał Renault - Kupte si nyní! (eurofrance.cz)
>>>> <https://eurofrance.cz/senzor-impulsu-original-renault-megane-laguna-20-ide-8200156362.html>
>>>> a sehnat se asi uz neda (Megane cabrio 2.0 IDE)
>>>>
>>>> On normalne funguje ale nekdy proste auto nejde nastartovat a pak
>>>> zase za cca pul hodiny jde ale vcera stavkovalo pres noc u Billy
>>>> coz uz mi trosku vadi. Samozrejme nevim jiste, ze je to timhle
>>>> snimacem ale na klikovce uz jsem vymenil druhy (puvodne byl opravdu
>>>> spatny) a tady se to chova tak, ze kdyz ho odpojim v klidu,
>>>> nenastartuju, kdyz za behu, tak motor v klidu bezi dal, takze se to
>>>> chova podobne jako v pripade poruch, za jizdy to nikdy nezdechlo,
>>>> ale nekam prijedu, vypnu a uz nenastartuju... Taky to uz parkrat
>>>> chytlo asi nejak se spatnym casovanim, motor si nejak kuckal ale
>>>> nejel, az po restartu.
>>>>
>>>> Jde mi o to, ze bude asi jedina moznost snimac vyrobit, je tam na
>>>> konci u te plosky nejaky magnet, tak predpokladam, ze je tam nejaky
>>>> magneticky okruh a v nem hall sensor? Kuchat se mi zatim nechce,
>>>> vetsinu casu funguje.
>>>>
>>>> Jeste me napadlo nahradit to normalnim indukcakem, ale ten bude asi
>>>> pomaly? To by ale pri startu nemuselo vadit a pak uz to asi nema
>>>> vliv a casuje se podle klikovky, ten snimac je tam zrejme jen
>>>> proto, aby se sesynchronizoval cyklus 4 taktu.
>>>>
>>>> A nakonec vzit signal ze snimace klikovky (to je ale osklive
>>>> analogove, jen civka a magnet, 2 piny) a simulovat snimac vacky, s
>>>> tim, ze by se to pri kazdem startu nahodne nastavilo na prvni nebo
>>>> druhy pulz a tim padem by to melo jit na par pokusu nastartovat...
>>>>
>>>>
>>>> Je to auto, co pujde v lete do srotu ale v zime bych ho rad jeste
>>>> dojezdil...
>>>>
>>>>
>>>> _______________________________________________
>>>> HW-list mailing list - sponsored bywww.HW.cz
>>>> Hw-list na list.hw.cz
>>>> http://list.hw.cz/mailman/listinfo/hw-list
>>>
>>> _______________________________________________
>>> HW-list mailing list - sponsored bywww.HW.cz
>>> Hw-list na list.hw.cz
>>> http://list.hw.cz/mailman/listinfo/hw-list
>>
>>
>
>
> _______________________________________________
> HW-list mailing list - sponsored bywww.HW.cz
> Hw-list na list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
------------- další část ---------------
HTML příloha byla odstraněna...
URL: <http://list.hw.cz/pipermail/hw-list/attachments/20241110/3d4cce6e/attachment.htm>
Další informace o konferenci Hw-list