Plaats een reactie

Je mail wordt niet openbaar getoond. Het wordt enkel gebruik voor contact of notificatie vanuit het beheer.

🗨️ Wat vind jij? Stel direct je vraag of geef je mening – zonder registratie. Je reactie zet het topic weer bovenaan bij 'Laatste posts' en trekt snel nieuwe reacties aan🔥. Mocht je als vaste bezoeker willen reageren, dan kun je je ook registreren.

Bevestig dat je geen robot bent door de volgende vragen te beantwoorden.

Noor heeft 10 knikkers. Ze verliest er 4 in het gras. Hoeveel heeft ze er nog?

Antwoord: (vul een getal in)

Er zitten 5 vogels op een hek. Twee vliegen weg. Hoeveel blijven er zitten?

Antwoord: (vul een getal in)

Weergave uitklappen Voorafgaande berichten: Stelling van Pythagoras?

Re: Stelling van Pythagoras?

door tempelier » do 05 jun 2025, 13:24

Professor Puntje schreef: do 05 jun 2025, 12:52 Dat de LP beter klinkt is onzin, dat ligt maar net aan de opnametechniek. Maar dat de totaalervaring van het aanschaffen en bezitten van een plaat, het bekijken van de hoes, het opzetten van de plaat en het beluisteren van de muziek hemelsbreed verschilt van het beluisteren van een aangeklikt liedje op de computer, daar is men inmiddels toch wel achter.
Dat werkt niet bij mij.
Ik luister wel naar muziek, maar dan meestal als achtergrond, ik heb nog wel wat platen staan die ik eigenlijk moet digitaliseren, maar het komt er maar niet van.

Re: Stelling van Pythagoras?

door Professor Puntje » do 05 jun 2025, 12:52

Dat de LP beter klinkt is onzin, dat ligt maar net aan de opnametechniek. Maar dat de totaalervaring van het aanschaffen en bezitten van een plaat, het bekijken van de hoes, het opzetten van de plaat en het beluisteren van de muziek hemelsbreed verschilt van het beluisteren van een aangeklikt liedje op de computer, daar is men inmiddels toch wel achter.

Re: Stelling van Pythagoras?

door tempelier » do 05 jun 2025, 12:39

Professor Puntje schreef: do 05 jun 2025, 10:56 De LP is ook weer terug. En boeken bestaan nog steeds.

Wel is er het risico dat topics steeds vaker direct om zeep worden geholpen met door AI gegenereerde antwoorden.
De LP vergelijk ik vaak met flessenmelk.
Er waren mensen die volhielden dat die beter smaakte ondanks dat ze het verschil bij smaaktesten niet konden proeven.

Het boek zal nog heel lang bestaan denk ik.
(zgn. Pulp boeken gaan nog als zoete broodjes over de toonbank)
Een boek (en wetenschappelijke tijdschriften) zijn meestal toch betrouwbaarder als het internet.

Re: Stelling van Pythagoras?

door Professor Puntje » do 05 jun 2025, 10:56

De LP is ook weer terug. En boeken bestaan nog steeds.

Wel is er het risico dat topics steeds vaker direct om zeep worden geholpen met door AI gegenereerde antwoorden.

Re: Stelling van Pythagoras?

door tempelier » do 05 jun 2025, 10:45

R_Bena schreef: zo 27 apr 2025, 00:10 It's alive.

De mensen die hier nog zitten zijn één van de laatste forummohikanen.

Maar spoedig is het alive... and kicking. Als iedereen ai content zat is, social media beu, en gewoon weer terug wil naar ouderwetse authenticiteit ;)
Ik vrees dat dat niet meer mogelijk is.

Re: Stelling van Pythagoras?

door Swets » wo 04 jun 2025, 09:00

Maar andere slimme wiskundige zijn natuurlijk ook welkom. :-)

Re: Stelling van Pythagoras?

door Swets » di 03 jun 2025, 23:24

@ Redcat: kom je hier niet meer? want ik kan af en toe wel wat hulp gebruiken... ben met Chat GPT bezig geweest maar die gaat vaak in een kringetje praten.....

maar ik heb het gevoel dat ik in me programma hier en daar een maatje niet goed heb staan... want niet alle draadjes zijn even snel klaar...
en, gelukkig heb ik alles nog via magneetjes vast zitten... want regelmatig trek ik een draadje los.. :-)

maar ik weet ff niet zo goed waar te meten of dat het allemaal klot.... Dus ik zou je help heel erg waarderen....

Re: Stelling van Pythagoras?

door R_Bena » zo 27 apr 2025, 00:10

It's alive.

De mensen die hier nog zitten zijn één van de laatste forummohikanen.

Maar spoedig is het alive... and kicking. Als iedereen ai content zat is, social media beu, en gewoon weer terug wil naar ouderwetse authenticiteit ;)

Re: Stelling van Pythagoras?

door Swets » zo 27 apr 2025, 00:03

Okay, gelukkig het staat er nog gewoon op.... Dus nieuwe naam, maar forum is er nog...

Re: Stelling van Pythagoras?

door Swets » vr 20 jan 2023, 08:25

okay, dat werkt dus...

ik heb die asin veranderd in die acos1 en het werkt nog steeds... of het echt sneller is?

bestaat er ook zoiets voor cos en sin? want in die rotatie matrixen gebruik ik die,,,?

Re: Stelling van Pythagoras?

door Swets » wo 18 jan 2023, 15:33

Dus die MK, is het zelfde als de straal van de katrol. en MP=mz-bz dus?

Code: Selecteer alles

float hoekKLM= phi- acos(RadiusPulley/BM) - acos(abs(MP)/BM)
zal ik vannavond eens eerst proberen... hooguit vliegen alle draadjes om me oren... :-)

Re: Stelling van Pythagoras?

door Swets » wo 18 jan 2023, 15:22

Code: Selecteer alles

float acos1(float x)
{
return((-0.155972*x+1.56467)*sqrt(1.0f-x));
}
wat is die f ?

en ik heb nu dit:

Code: Selecteer alles

 float hoekKLM = phi - asin (BK / BM) - asin(BP / BM);
en dat zou moeten worden

Code: Selecteer alles

float hoekKLM= phi - acos(MK/BM)- acos(abs(mz-bz)/BM);
Dat zou al sneller zijn... toch dat begrijp ik er uit....

moet ik nog eens goed kijken waar je die MK vandaan haal, want die variable had ik nog niet... en ook mz-bz?

Re: Stelling van Pythagoras?

door Swets » di 17 jan 2023, 10:18

begrijp ik het nu goed?

Code: Selecteer alles

// IN: 0 <= x <= 1  
// UIT: acos(x), maximale fout 0.0061
float acos1(float x)
{
return((-0.155972*x+1.56467)*sqrt(1.0f-x));
}
dit is een soort eigen functie voor acos, die ik dan aanroep ipv de echte acos

en asin?

en in me matrixen gebruik ik voor het draaien ook een cos en een sin
zijn daar ook zoiets voor?

Re: Stelling van Pythagoras?

door Swets » zo 15 jan 2023, 16:53

ik heb er ook ff een Straal bij gemaakt, overal waar ik die diameter gebruik, deel ik hem door 2...
dus dat kunnen we ook beter 1 keer doen....

Re: Stelling van Pythagoras?

door Swets » zo 15 jan 2023, 16:41

RedCat schreef: ma 29 nov 2021, 20:09
Swets schreef: ma 29 nov 2021, 12:17 ... maar ja , er komt steeds meer rekenwerk in, en nu dus de asin ...
Als het je om snelheid gaat, dan kunnen we waarschijnlijk veel winst behalen met een grovere benadering voor asin(), zie bijvoorbeeld
https://seblagarde.wordpress.com/2014/1 ... hitecture/

De asin() functie is in dat artikel een uitbreiding van de acos() functie. Als we onze formule omzetten naar acos() (in plaats van asin()) zijn we hiermee dus nog sneller:
\(\small ∠KML = \pi - ∠KMB - ∠BMP = \pi - acos\left(\frac{MK}{BM}\right) - acos\left(\frac{abs(mz-bz)}{BM}\right) \)

Hier werken we met hoeken van 0 .. pi/2 (= van 0° .. 90°), aangenomen dat de onderkant van het blok nooit boven het middelpunt van de bovenste katrol uit zal komen.
Daarom kunnen we de benaderingsformules van dat artikel nog verder vereenvoudigen:

Code: Selecteer alles

// IN: 0 <= x <= 1  
// UIT: acos(x), maximale fout 0.0061
float acos1(float x)
{
return((-0.155972*x+1.56467)*sqrt(1.0f-x));
}

Code: Selecteer alles

// IN: 0 <= x <= 1  
// UIT: acos(x), maximale fout 0.00061
float acos2(float x)
{
return(((0.0464619*x-0.201877)*x+1.57018)*sqrt(1.0f-x));
}

Code: Selecteer alles

// IN: 0 <= x <= 1  
// UIT: acos(x), maximale fout 0.000071
float acos3(float x)
{
return((((-0.0186166*x+0.0740935)*x-0.212053)*x+1.57073)*sqrt(1.0f-x));
}
acos1() heeft een maximale fout van 0.0061, acos2() van 0.00061 en acos3() van 0.000071.
Omdat we die functie in onze formule 2 keer nodig hebben, en de cirkelstraal van het katrolwiel 12.49 is,
zijn de maximale fouten in de draadlengte bij
- acos1(): 0.0061 * 2 * 12.49 = 0.15
- acos2(): 0.00061 * 2 * 12.49 = 0.015
- acos3(): 0.000071 * 2 * 12.49 = 0.0018
Afhankelijk van de nauwkeurigheid van je motor kan je de optimale acos() kiezen.

Als ik op mijn desktop acos() in een lus 10^9 keer aanroep, dan dit duurt bij:
- acos1() 2.25 sec
- acos2() 2.48 sec
- acos3() 2.76 sec
terwijl de normale acos() (wel met double nauwkeurigheid) hier 52.8 sec over doet.

De bulk van het werk in de 3 benaderingsformules wordt waarschijnlijk veroorzaakt door de sqrt() berekening erin; de extra vermenigvuldigen, elk met factor 10 nauwkeurigheidswinst, lijken er niet zo toe te doen.
Alle 3 zijn ze wel zo'n 20 keer sneller dan de ingebouwde acos() functie.

Ik heb geen arduino, maar je kan zelf testen wat daarop de snelheidsverschillen zijn.
Ditzelfde kan je doen voor optellen, vermenigvuldigen etc. van float getallen versus long getallen.

Mocht je nog in assembly programmeren: het artikel geeft bovenstaande functies ook in een assembly vorm.
ik wil wel eens kijken wat het uitmaak.... maar ik heb dit al 3 keer door gelezen.... maar nu hoe ik het moet toepasen....
?

Code: Selecteer alles

long Mot1(float X, float Y, float Z)
{
  // z,y,z uit rekenen van uit main x,y,z
  // x,y,z van hoek 1
  long result;

  float XCorner1 = -(LengthFrame / 2.0);
  float yCorner1 = -(WidhtFrame / 2.0);
  float zCorner1 = (HighFrame / 2.0);

  float Mot1LengthX = XCorner1 - X;
  float Mot1lengthY = yCorner1 - Y;
  float Mot1lengthZ = zCorner1 - Z;

  float DB = Pythagoras(Mot1lengthY, Mot1LengthX, Mot1lengthZ);

  float BP = DB - (DiaKatrol / 2.0);
  float MP = zCorner1 - Z;

  float BM = Pythagoras(MP, BP, 0);

  float BK = Pythagoras(BM, (DiaKatrol / 2.0), 0);

  float hoekKLM = phi - asin(BK / BM) - asin(BP / BM);

  float KL = (DiaKatrol / 2.0) * hoekKLM;

  float Mot1Length = BK + KL;

  // Serial.print("Length Motor 1 :");
  // Serial.print(Mot1Length);
  // Serial.print("mm, total Steps :");
  // Serial.println(Mot1Length * StepUnit);

  result = ((Mot1Length * StepUnit) + 0.5);
  return result;
};
ik heb deze code voor elke motor... daar heb ik 2x asin...
maar ik voer dit stuk best wel vaak uit... en natuurlijk voor alle 8 de motoren....
ik heb trouwens dit :

Code: Selecteer alles

  float XCorner1 = -(LengthFrame / 2.0);
  float yCorner1 = -(WidhtFrame / 2.0);
  float zCorner1 = (HighFrame / 2.0);
ook ff ergens aan het begin gezet, by de setup... die hoef natuurlijk niet elke keer uitgerekend te worden.... er varanderd niets aan....

of ik het in assembly doe... pfff vroeger veel in Z80 assembly gewerkt...maar dit is allemaal in c++