Voilà le schéma qui fonctionne en branchant les sorties (D et G) sur 2 entrées analogiques d'une carte servos OC :

L'explication :
- Code: Tout sélectionner
Fonctionnement électronique des freins différentiels :
1 - Principe (par ex. le frein droit) :
- L'action sur la pédale pilote induit qu'une action sur la pédale co-pilote n'est aucun effet supplémentaire tant que cette action ne dépasse pas la valeur pilote (et vice et versa).
- Si le co-pilote appuie plus fort (plus loin) que le pilote, alors "il prend la main" : le freinage devient plus important.
- Idem pour le frein gauche.
2 - Le shéma :
- L'alimentation du montage est fournie par la carte servos (ou autre) par le + et le - normalement connecté sur le potentiomètre.
- Chacune des pédales de frein (par ex. droit pilote et droit co-pilote) actionne un potentiomètre (P1 et P2 de 2,5k Ω) dans le "pied" duquel est ajouté un potentiomètre ajustable (Adj1 et Adj2 de 100 Ω).
- Le montage est fait de telle manière que la tension "V1" est maximum au repos (sans appui sur la pédale) soit 1,4V et diminue par appui sur la pédale vers une valeur d'environ 0,4V.
- Chaque potentiomètre est "isolé" par une diode (D1 et D2 type 1N4148) qui est polarisée par une résistance (R1) de 33k Ω et attaque la base d'un Tz (BC107 tz1). La tension au borne d'une diode reste (relativement) constante tant que le courant qui la traverse ne descend pas en dessous d'une certaine valeur et est d'environ 0,6V pour ce type de diode.
- Le Tz est monté en amplificateur avec un gain de 2,2 (R2 / R3) avec la sortie sur le collecteur.
3 - Fonctionnement :
- Sans action sur les pédales, les tensions (théoriques) sont :
- V1 = 1,4V
- V2 = 2 V (1,4V + 0,6V)
- V3 = 1,4V (la jonction base/émetteur est une diode, donc 2V - 0,6V).
- V4 = 2,3V (Ca se calcule ...).
- Quand une pédale est actionnée, V1 diminue donc V2 suit avec 0,6V de plus, par Ex. :
- Appui frein droit par co-pilote (diode D2) -> V1 passe à 1V -> V2 passe à 1,6V.
- Ce qui bloque la diode D1 (tension anode < à sa cathode).
- Donc un appui moins important sur la pédale frein droit pilote n'aura d'action que si D1 est remise en conduction avec une valeur V1' = ou < à 1V.
- L'étage à Tz amplifie et inverse cette tension V2, donc sa sortie collecteur augmente.
- La sortie varie (environ) de 2,3 à 4,3V.
4 - Réglage du montage :
- Alimenter le montage en 5V.
- Positionner les potentiomètres "Adj1 et 2" au milieu de leur courses.
- Régler mécaniquement l'entrainement du potentiomètre P1 pour avoir V1' = 1,4V (idem pour P2).
- Ajuster cette valeur (V1' et V1) avec "Adj1 et Adj2".
- Vérifier la tension de sortie V4 (de 2,3 à 4,3V). C'est fini.
5 - Notes :
- V4 (sortie) peux varier en fonction de la tolérance des composants.
Et le code SIOC :
- Code: Tout sélectionner
// ===========================================
//
// ££15 Frein park & freins différentiels !
//
// Si fs_park_brake = 32767 ($0BC8 = 32767) alors fs_breack_L et fs_breack_R = 16384 (freins complètement serrés).
// Si fs_park_brake = 0 alors fs_breack_L et fs_breack_R = 0 (freins relaché).
// Si fs_park_brake = 0 et appui sur fs_brack_L ou R l'offset correspondant varie de 0 à 16384
// -> Donc de 0 à 16384
//
// ===========================================
Var 0360, name fs_park_brake, Link FSUIPC_INOUT, Offset $0BC8, Length 2 // FS Park brack command
{
&fs_park_brake = &sw_park_brake * 32767 // si &sw_park_brake = 1 -> &fs_park_brake = 32767, sinon = 0
}
Var 0362, name sw_park_brake, Link IOCARD_SW, Input 212 // inter frein park
{
&fs_park_brake = &sw_park_brake * 32767 // switch frein de park
}
//
// Gestion potentiomètres freins différentiels G et D
//
Var 364, name break_L_pot, link USB_ANALOGIC, device 3, input 1, posl 109, posc 154, posr 199 // Potar frein diff. Gauche
{
if &sw_park_brake = 0
{
L0 = LIMIT 0, 255, &break_L_pot // Limite LO (valeur potar) entre 0 et 255
&fs_breack_L = L0 * 64 // Valeur dans frein gauche 0 à 16384
}
else
{
&fs_breack_L = 32767 // Confirme frein parc ON
}
}
Var 366, name break_R_pot, link USB_ANALOGIC, device 3, input 2, posl 109, posc 163, posr 217 // Potar frein diff. Droit
{
if &sw_park_brake = 0
{
L0 = LIMIT 0, 255, &break_R_pot // Limite LO (valeur potar) entre 0 et 255
&fs_breack_R = L0 * 64 // Valeur dans frein Droit 0 à 16384
}
else
{
&fs_breack_L = 32767 // Confirme frein parc ON
}
}
Var 0370, name fs_breack_L, link FSUIPC_INOUT, Offset $0BC4, Length 2 // FS breack left palonier
Var 0372, name fs_breack_R, link FSUIPC_INOUT, Offset $0BC6, Length 2 // FS breack right palonier
Je pars du principe que si le frein de park est serré, je ne tiens plus compte de l'appui sur les freins différentiels.
Ca tombe bien, je gère également le frein de park par SIOC, sinon on peux utiliser l'offset $0BC8 = 0 (relaché) ou 32767 (serré).
J'ajuste la valeur de la sortie du montage par l'option "posl, c et r" dans SIOC : posl 109, posc 163, posr 217
Je n'ai pas fait de tests poussés et je pense qu'il doit y avoir un "défaut" de linéarité du au fait que la réponse des diodes n'est pas linéaire au moment du blocage !
Mais franchement, le résultat au roulage est très bon (mieux qu'avec un simple joystick).