Ecran de télémétrie perso

Modérateur : Anim'Elec

Répondre
Avatar du membre
thetux
Chauffeur sympa
Chauffeur sympa
Messages : 491
Enregistré le : 24 juil. 2012, 21:25
Pays : B
Localisation : Andenne
A remercié : 7 fois
A été remercié : 41 fois

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 n’avez pas les permissions nécessaires pour voir les fichiers joints à ce message.
JIYIMI
Coursier national
Coursier national
Messages : 56
Enregistré le : 01 janv. 2012, 07:44
Numéro de département : 974
Pays : F
A été remercié : 1 fois

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

Message par JIYIMI »

Magnifique félicitation :up:
Avatar du membre
stephd
Garagiste en chef
Garagiste en chef
Messages : 5492
Enregistré le : 21 févr. 2006, 06:23
Numéro de département : 60
Pays : F
Localisation : Dans l'oise derriere mon PC
A remercié : 520 fois
A été remercié : 120 fois
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 du membre
Bartste
Conducteur retraité ou la belle vie
Conducteur retraité ou la belle vie
Messages : 2271
Enregistré le : 15 août 2014, 18:22
Numéro de département : 0
Pays : CH
A remercié : 58 fois
A été remercié : 230 fois

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 du membre
thetux
Chauffeur sympa
Chauffeur sympa
Messages : 491
Enregistré le : 24 juil. 2012, 21:25
Pays : B
Localisation : Andenne
A remercié : 7 fois
A été remercié : 41 fois

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

Message par thetux »

Merci, j'essaye de vous faire cela à mon retour de congés.
Avatar du membre
cc38150
Conducteur retraité ou la belle vie
Conducteur retraité ou la belle vie
Messages : 3384
Enregistré le : 15 août 2008, 15:45
Numéro de département : 38
Pays : F
Localisation : Vernioz (Isère 38)
A remercié : 55 fois
A été remercié : 237 fois

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

Message par cc38150 »

Génial :up:
Tu es sur une X9D ou une X9E ?
Répondre

Retourner vers « FR sky, TAranis et autres radio de la marque »