Calculateur de position du piston bielle-manivelle
Ce calculateur détermine la position instantanée d’un piston ou coulisseau à partir de l’angle du vilebrequin, du rayon de manivelle et de la longueur de bielle.
Lancer gratuitement
Il fournit la distance entre l’axe du vilebrequin et l’axe du piston sur la ligne de course, ainsi que le déplacement depuis le point mort haut. La référence est donc sans ambiguïté. La géométrie exacte accepte toute unité de longueur employée de manière cohérente.
Définissez le mécanisme et la référence
Un système bielle-manivelle transforme une rotation en translation alternative au moyen d’une bielle rigide. Saisissez l’angle en degrés, avec 0 degrés au point mort haut, puis le rayon de manivelle et l’entraxe de bielle. Les deux longueurs doivent partager la même unité, par exemple le millimètre ou le pouce. piston_position_from_crank_center mesure la distance entre l’axe du vilebrequin et l’axe du piston sur la ligne de course. displacement_from_top_dead_center part de zéro et augmente vers le point mort bas. Ces deux résultats évitent de confondre des références différentes. La bielle doit être au moins aussi longue que le rayon afin d’autoriser un tour complet. Tout angle hors d’un tour est ramené à son équivalent entre 0 et moins de 360 degrés.
Comprenez la géométrie du résultat
Le calcul décompose le maneton parallèlement et perpendiculairement à la course. Avec r pour rayon, l pour longueur de bielle et θ pour angle, la position vaut x = r cos(θ) + √(l² − r² sin²(θ)). La racine est la composante axiale de la bielle. Le point mort haut se trouve à l + r et son déplacement vaut l + r − x. Pour un mécanisme aligné, le point mort bas vaut l − r et la course totale 2r. Une bielle finie ne produit pas un mouvement sinusoïdal parfait : son obliquité crée une asymétrie autour de la mi-course. Une bielle relativement longue atténue cet effet. Le modèle suppose des liaisons rigides sans décalage et fournit des valeurs stables, sans simulation, itération ni donnée externe.
Exploitez les valeurs en conception
Utilisez la position pour établir des tables de déplacement, comparer des rapports de bielle, situer un événement angulaire ou contrôler un dessin CAD. Pour une série, lancez un calcul par angle sans changer les dimensions ni leur unité. La course et les points morts servent de contrôles : à 0 degrés, le déplacement depuis le point mort haut est nul ; à 180 degrés, il vaut deux fois le rayon. Le modèle suppose que l’axe de course traverse le centre du vilebrequin, avec des pièces rigides, sans jeu et de dimensions constantes. Il décrit la géométrie, pas le comportement réel sous charge. Décalage d’axe ou d’axe de piston, jeu, déformation et tolérances demandent un modèle complémentaire. Chaque calcul automatisé via API coûte $0.002. Si les dimensions sont incertaines, vérifiez-les plutôt que d’assimiler précision numérique et précision physique.
Cas d’usage
Tracer la course d’un moteur
Calculez le déplacement à plusieurs angles pour une courbe cinématique, une étude de distribution ou une comparaison de rapports de bielle.
Contrôler un compresseur ou une pompe
Déterminez la position instantanée reliant la rotation au volume de chambre ou à la course du plongeur.
Vérifier une conception mécanique
Comparez points morts, course et position intermédiaire avec un calcul manuel ou un modèle CAD.
Questions fréquentes
Que signifie ici la position du piston ?
Il s’agit de la distance entre l’axe du piston et le centre du vilebrequin sur la ligne de course. Un autre champ donne le déplacement depuis le point mort haut.
Quelles unités de longueur pouvez-vous employer ?
Toute unité convient si crank_radius et connecting_rod_length utilisent la même. Les longueurs retournées conservent cette unité.
Où se trouve l’angle zéro ?
Au point mort haut, lorsque la manivelle et la bielle s’étendent vers le piston sur la ligne de course.
Un cylindre ou coulisseau décalé est-il pris en charge ?
Non. Le modèle représente un mécanisme aligné dont la ligne de course traverse le centre du vilebrequin.
Pourquoi la bielle doit-elle être au moins égale au rayon ?
Une bielle plus courte ne respecte pas la géométrie rigide pendant un tour complet. Cette limite garantit une position réelle à chaque angle.
Quel est le prix d’un calcul API ?
Chaque requête API coûte $0.002. Le calcul est déterministe et ne consulte aucun service externe.
Pour les développeurs — accès API
Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.
Endpoint
Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.
Appeler depuis votre stack
curl -X POST https://api.kit.forhosting.com/eng/slider-crank-position \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"crank_angle_deg":60,"crank_radius":50,"connecting_rod_length":150}'const res = await fetch("https://api.kit.forhosting.com/eng/slider-crank-position", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"crank_angle_deg": 60,
"crank_radius": 50,
"connecting_rod_length": 150
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/eng/slider-crank-position",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"crank_angle_deg": 60,
"crank_radius": 50,
"connecting_rod_length": 150
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/eng/slider-crank-position", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"crank_angle_deg":60,"crank_radius":50,"connecting_rod_length":150}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"crank_angle_deg":60,"crank_radius":50,"connecting_rod_length":150}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/eng/slider-crank-position", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemple de requête
{
"crank_angle_deg": 60,
"crank_radius": 50,
"connecting_rod_length": 150
}Exemple de réponse
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "eng.slider_crank_position",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.
Tarifs
Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.
Erreurs
| HTTP | Code | Signification |
|---|---|---|
401 | unauthorized | Clé API absente ou invalide : vérifiez l’en-tête Authorization. |
402 | insufficient_balance | Solde insuffisant : rechargez votre compte pour lancer cette tâche. |
404 | unknown_type | Type de tâche inconnu : vérifiez le champ type de votre requête. |
429 | rate_limited | Trop de requêtes : ralentissez la cadence, puis réessayez. |