Ecran de télémétrie perso

Modérateur : Anim'Elec

Répondre
Avatar de l’utilisateur
thetux
Chauffeur sympa
Chauffeur sympa
Messages : 494
Inscription : 24 juil. 2012, 21:25
Pays : B
Localisation : Andenne
Has thanked : 7 times
Been thanked : 43 times

Ecran de télémétrie perso

Message par thetux »

Bonjour,

j'ai voulu réaliser un écran de télémétrie perso pour le challenger, je voulais y voir la position des servos, des relevages, la conso en courant, le voltage de la batterie, ... J'ai un ampèremètre 40A dans le tracteur, c'est le seul capteur télémétrique, et voici le résultat:
taranis.png
Ainsi on voit la position des servos et la commande pour ce servo.

Et le code:

Code : Tout sélectionner

local function drawVerticalGauge(x, y, size, width, value, max)
  val = value
  if val<0 then
    val=0
  end
  if val>max then
    val=max
  end
  sz_filled = val*(size/max)
  sz_unfilled = size-sz_filled
  lcd.drawRectangle(x, y-size, width, sz_unfilled)
  lcd.drawFilledRectangle(x, y-sz_filled, width, sz_filled)
end

local function drawDate(x, y)
  local datenow = getDateTime()
  lcd.drawText(x,y,datenow.hour..":"..datenow.min..":"..datenow.sec,0)
  -- lcd.drawText(x,y+6,datenow.day.."/"..datenow.mon.."/"..datenow.year,0)
end

local function bgrnd_func()
  lcd.clear()

end

local function run(event)
  bgrnd_func()
  lcd.drawPixmap(60, 0, "/SCRIPTS/BMP/765.bmp")

  -- Front outputs
  lcd.drawText(2, 43, "SA", SMLSIZE)
  lcd.drawGauge(15, 43, 20, 6, 100+(getValue('ch3')/10), 200)
  lcd.drawText(2, 50, "SB", SMLSIZE)
  lcd.drawGauge(15, 50, 20, 6, 100+(getValue('ch5')/10), 200)
  lcd.drawText(2, 57, "S1", SMLSIZE)
  lcd.drawGauge(15, 57, 20, 6, 100+(getValue('ch6')/10), 200)

  -- Front lift
  lcd.drawText(2, 5, "SF", SMLSIZE)
  lcd.drawText(5, 12, "+", SMLSIZE)
  lcd.drawText(2, 19, "LS", SMLSIZE)
  drawVerticalGauge(15, 30, 29, 6, 100+(getValue('ch7')/10), 200)

  -- Rear outputs
  lcd.drawText(141, 43, "SC", SMLSIZE)
  lcd.drawGauge(154, 43, 20, 6, 100+(getValue('ch11')/10), 200)
  lcd.drawText(141, 50, "SD", SMLSIZE)
  lcd.drawGauge(154, 50, 20, 6, 100+(getValue('ch12')/10), 200)
  lcd.drawText(141, 57, "Vit", SMLSIZE)
  lcd.drawGauge(154, 57, 20, 6, 100+(getValue('ch13')/10), 200)
  lcd.drawText(200, 43, "S2", SMLSIZE)
  lcd.drawGauge(176, 43, 20, 6, 100+(getValue('ch14')/10), 200)
  lcd.drawText(200, 50, "YDr", SMLSIZE)
  lcd.drawGauge(176, 50, 20, 6, 100+(getValue('ch15')/10), 200)
  lcd.drawText(200, 57, "SH", SMLSIZE)
  lcd.drawGauge(176, 57, 20, 6, 100+(getValue('ch16')/10), 200)

  -- Rear lift
  lcd.drawText(200, 5, "SE", SMLSIZE)
  lcd.drawText(203, 12, "+", SMLSIZE)
  lcd.drawText(200, 19, "RS", SMLSIZE)
  drawVerticalGauge(191, 30, 29, 6, 100+(getValue('ch9')/10), 200)

  -- Power
	lcd.drawChannel(72, 43, "Curr", DBLSIZE)
	lcd.drawChannel(72, 58, "Curr+", SMLSIZE)
	lcd.drawChannel(130, 43, "VFAS", DBLSIZE)
	lcd.drawChannel(130, 58, "BtRx", SMLSIZE)
	lcd.drawChannel(110, 58, "tx-voltage", SMLSIZE)

  -- Speed
  drawVerticalGauge(78, 64, 22, 4, 100+(getValue('ch2')/10), 200)
  drawVerticalGauge(83, 64, 22, 4, 100+(getValue('ch1')/10), 200)

  -- Various
  drawDate(22, 1)

  -- linking lines
  lcd.drawLine(24, 20, 58, 20, SOLID, FORCE)
  lcd.drawLine(24, 41, 24, 22, SOLID, FORCE)
  lcd.drawLine(24, 22, 58, 22, SOLID, FORCE)

  lcd.drawLine(188, 20, 140, 20, SOLID, FORCE)
  lcd.drawLine(188, 41, 188, 22, SOLID, FORCE)
  lcd.drawLine(188, 22, 140, 22, SOLID, FORCE)
  lcd.drawLine(166, 41, 166, 24, SOLID, FORCE)
  lcd.drawLine(166, 24, 140, 24, SOLID, FORCE)
end

return { background=bgrnd_func, run=run }
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
JIYIMI
Coursier national
Coursier national
Messages : 56
Inscription : 01 janv. 2012, 07:44
Numéro de département : 974
Pays : F
Been thanked : 1 time

Re: Ecran de télémétrie perso

Message par JIYIMI »

Magnifique félicitation :up:
Avatar de l’utilisateur
stephd
Garagiste en chef
Garagiste en chef
Messages : 5540
Inscription : 21 févr. 2006, 06:23
Numéro de département : 60
Pays : F
Localisation : Dans l'oise derriere mon PC
Has thanked : 549 times
Been thanked : 140 times
Contact :

Re: Ecran de télémétrie perso

Message par stephd »

Salut c'est super, dis moi, pourrais tu nous faire un petit tuto bien détaillé pour en faire autan stp?
A Tantôt... ;) vive le jus de fraise
Avatar de l’utilisateur
Bartste
Conducteur retraité ou la belle vie
Conducteur retraité ou la belle vie
Messages : 2271
Inscription : 15 août 2014, 18:22
Numéro de département : 0
Pays : CH
Has thanked : 58 times
Been thanked : 230 times

Re: Ecran de télémétrie perso

Message par Bartste »

La classe ! J'ai faillit me lancer dans les script LUA aussi, mais comme la télémetrie déconne en 32voies, j'ai laissé tombé.

Mais good job, un tuto m'intéresse aussi ! :up:
Avatar de l’utilisateur
thetux
Chauffeur sympa
Chauffeur sympa
Messages : 494
Inscription : 24 juil. 2012, 21:25
Pays : B
Localisation : Andenne
Has thanked : 7 times
Been thanked : 43 times

Re: Ecran de télémétrie perso

Message par thetux »

Merci, j'essaye de vous faire cela à mon retour de congés.
Avatar de l’utilisateur
cc38150
Conducteur retraité ou la belle vie
Conducteur retraité ou la belle vie
Messages : 3470
Inscription : 15 août 2008, 15:45
Numéro de département : 38
Pays : F
Localisation : Vernioz (Isère 38)
Has thanked : 57 times
Been thanked : 257 times

Re: Ecran de télémétrie perso

Message par cc38150 »

Génial :up:
Tu es sur une X9D ou une X9E ?
Soutenez le forum en vous approvisionant chez les commerçants partenaires :
Image
https://www.tecnimodel.com
Répondre

Revenir à « FR sky, TAranis et autres radio de la marque »