From 647654ac8e25c92989c81eb13667dd636e5b77a6 Mon Sep 17 00:00:00 2001 From: Michael Oborne Date: Fri, 6 Apr 2012 16:27:26 +0800 Subject: [PATCH] APM Planner - WIP - no exe 3DR R setup layout - thanks andrew. --- .../Antenna/Tracker.Designer.cs | 5 +- Tools/ArdupilotMegaPlanner/Antenna/Tracker.cs | 3 +- .../ArdupilotMegaPlanner/Antenna/Tracker.resx | 77 - .../ArdupilotMegaPlanner/ArdupilotMega.csproj | 143 +- .../BackStageViewContentPanel.cs | 23 + .../BackstageView/BackStageViewMenuPanel.cs | 13 +- .../Controls/BackstageView/BackstageView.cs | 29 +- .../BackstageView/BackstageViewButton.cs | 27 +- Tools/ArdupilotMegaPlanner/CurrentState.cs | 19 + .../GCSViews/Configuration.cs | 4 +- ...ConfigAccelerometerCalibration.Designer.cs | 46 +- .../ConfigAccelerometerCalibration.cs | 50 +- .../ConfigAccelerometerCalibration.es-ES.resx | 315 ++++ .../ConfigAccelerometerCalibration.fr.resx | 312 ++++ .../ConfigAccelerometerCalibration.it-IT.resx | 318 ++++ .../ConfigAccelerometerCalibration.pl.resx | 318 ++++ .../ConfigAccelerometerCalibration.resx | 190 +++ ...onfigAccelerometerCalibration.zh-Hans.resx | 496 ++++++ .../ConfigAccelerometerCalibration.zh-TW.resx | 460 ++++++ .../ConfigurationView/ConfigArducopter.cs | 3 +- .../ConfigurationView/ConfigArduplane.cs | 3 +- .../ConfigBatteryMonitoring.Designer.cs | 140 +- .../ConfigBatteryMonitoring.cs | 345 +++- .../ConfigBatteryMonitoring.es-ES.resx | 315 ++++ .../ConfigBatteryMonitoring.fr.resx | 312 ++++ .../ConfigBatteryMonitoring.it-IT.resx | 318 ++++ .../ConfigBatteryMonitoring.pl.resx | 318 ++++ .../ConfigBatteryMonitoring.resx | 552 +++++++ .../ConfigBatteryMonitoring.zh-Hans.resx | 496 ++++++ .../ConfigBatteryMonitoring.zh-TW.resx | 460 ++++++ .../ConfigFlightModes.Designer.cs | 196 +-- .../ConfigurationView/ConfigFlightModes.cs | 13 +- .../ConfigFlightModes.es-ES.resx | 315 ++++ .../ConfigFlightModes.fr.resx | 312 ++++ .../ConfigFlightModes.it-IT.resx | 318 ++++ .../ConfigFlightModes.pl.resx | 318 ++++ .../ConfigurationView/ConfigFlightModes.resx | 856 +++++++++- .../ConfigFlightModes.zh-Hans.resx | 496 ++++++ .../ConfigFlightModes.zh-TW.resx | 460 ++++++ .../ConfigHardwareOptions.Designer.cs | 102 +- .../ConfigHardwareOptions.cs | 234 ++- .../ConfigHardwareOptions.es-ES.resx | 315 ++++ .../ConfigHardwareOptions.fr.resx | 312 ++++ .../ConfigHardwareOptions.it-IT.resx | 318 ++++ .../ConfigHardwareOptions.pl.resx | 318 ++++ .../ConfigHardwareOptions.resx | 402 +++++ .../ConfigHardwareOptions.zh-Hans.resx | 496 ++++++ .../ConfigHardwareOptions.zh-TW.resx | 460 ++++++ .../ConfigurationView/ConfigPlanner.cs | 3 +- .../ConfigRadioInput.Designer.cs | 113 +- .../ConfigurationView/ConfigRadioInput.cs | 13 +- .../ConfigRadioInput.es-ES.resx | 315 ++++ .../ConfigRadioInput.fr.resx | 312 ++++ .../ConfigRadioInput.it-IT.resx | 318 ++++ .../ConfigRadioInput.pl.resx | 318 ++++ .../ConfigurationView/ConfigRadioInput.resx | 483 ++++++ .../ConfigRadioInput.zh-Hans.resx | 496 ++++++ .../ConfigRadioInput.zh-TW.resx | 460 ++++++ .../ConfigurationView/ConfigRawParams.cs | 3 +- .../ConfigTradHeli.Designer.cs | 390 ++--- .../ConfigurationView/ConfigTradHeli.cs | 470 +++++- .../ConfigTradHeli.es-ES.resx | 315 ++++ .../ConfigurationView/ConfigTradHeli.fr.resx | 312 ++++ .../ConfigTradHeli.it-IT.resx | 318 ++++ .../ConfigurationView/ConfigTradHeli.pl.resx | 318 ++++ .../ConfigurationView/ConfigTradHeli.resx | 1461 +++++++++++++++++ .../ConfigTradHeli.zh-Hans.resx | 496 ++++++ .../ConfigTradHeli.zh-TW.resx | 460 ++++++ .../ConfigurationView/Setup.Designer.cs | 21 +- .../GCSViews/ConfigurationView/Setup.cs | 18 +- .../ArdupilotMegaPlanner/GCSViews/Firmware.cs | 2 +- Tools/ArdupilotMegaPlanner/HUD.cs | 1 - Tools/ArdupilotMegaPlanner/MAVLink.cs | 37 +- Tools/ArdupilotMegaPlanner/MainV2.cs | 41 +- Tools/ArdupilotMegaPlanner/Msi/wix.pdb | Bin 19968 -> 19968 bytes .../Radio/3DRradio.Designer.cs | 12 +- Tools/ArdupilotMegaPlanner/Radio/3DRradio.cs | 3 +- .../ArdupilotMegaPlanner/Radio/3DRradio.resx | 80 +- 78 files changed, 18953 insertions(+), 987 deletions(-) create mode 100644 Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewContentPanel.cs create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.es-ES.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.fr.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.it-IT.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.pl.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-Hans.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-TW.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.es-ES.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.fr.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.it-IT.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.pl.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-Hans.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-TW.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.es-ES.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.fr.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.it-IT.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.pl.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-Hans.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-TW.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.es-ES.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.fr.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.it-IT.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.pl.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-Hans.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-TW.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.es-ES.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.fr.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.it-IT.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.pl.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-Hans.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-TW.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.es-ES.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.fr.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.it-IT.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.pl.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-Hans.resx create mode 100644 Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-TW.resx diff --git a/Tools/ArdupilotMegaPlanner/Antenna/Tracker.Designer.cs b/Tools/ArdupilotMegaPlanner/Antenna/Tracker.Designer.cs index f748e44462..448ceb7e10 100644 --- a/Tools/ArdupilotMegaPlanner/Antenna/Tracker.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/Antenna/Tracker.Designer.cs @@ -28,7 +28,6 @@ /// private void InitializeComponent() { - System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Tracker)); this.CMB_interface = new System.Windows.Forms.ComboBox(); this.label1 = new System.Windows.Forms.Label(); this.CMB_baudrate = new System.Windows.Forms.ComboBox(); @@ -317,7 +316,6 @@ // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(587, 212); this.Controls.Add(this.LBL_tilttrim); this.Controls.Add(this.LBL_pantrim); this.Controls.Add(this.label12); @@ -344,9 +342,8 @@ this.Controls.Add(this.CMB_serialport); this.Controls.Add(this.label1); this.Controls.Add(this.CMB_interface); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); this.Name = "Tracker"; - this.Text = "Tracker"; + this.Size = new System.Drawing.Size(587, 212); this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Tracker_FormClosing); ((System.ComponentModel.ISupportInitialize)(this.TRK_pantrim)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.TRK_tilttrim)).EndInit(); diff --git a/Tools/ArdupilotMegaPlanner/Antenna/Tracker.cs b/Tools/ArdupilotMegaPlanner/Antenna/Tracker.cs index 53bad8d3bb..589f67111d 100644 --- a/Tools/ArdupilotMegaPlanner/Antenna/Tracker.cs +++ b/Tools/ArdupilotMegaPlanner/Antenna/Tracker.cs @@ -6,10 +6,11 @@ using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.Antenna { - public partial class Tracker : Form + public partial class Tracker : BackStageViewContentPanel { System.Threading.Thread t12; static bool threadrun = false; diff --git a/Tools/ArdupilotMegaPlanner/Antenna/Tracker.resx b/Tools/ArdupilotMegaPlanner/Antenna/Tracker.resx index 222a74addf..7080a7d118 100644 --- a/Tools/ArdupilotMegaPlanner/Antenna/Tracker.resx +++ b/Tools/ArdupilotMegaPlanner/Antenna/Tracker.resx @@ -117,81 +117,4 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - - - AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAA - AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADOxkjAtnoOAKpJ4vyiK - c+8nh3D/J4Zv/yeHcP8oi3PvKpJ4vy6fg4AzsZIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADjGo2AyspPfLZ+D/yiQ - d/8hlXj/G6F9/xeqg/8XqYL/GKqD/xuhfv8ilnn/KZB3/y2fhP8yspPfN8ajYAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADvRrDA1vpzfL6uN/yel - hP8XvJD/DMyY/wfQl/8FzJP/A8qS/wPJkf8EypL/BsyU/wnRmP8PzZn/Gb2R/yemhP8tqoz/Mb2a3zbQ - qkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAA4y6ZgMbWV/yin - iP8WwZP/Btqf/wDPlf8AyI7/A8aP/yfNnv9T2LP/UNax/03XsP8506b/G8ya/wHKkf8F0Zf/CNuf/xLB - kv8fpYT/J7KQ/y7IomAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAANcajny+w - kf8hqoj/CNSd/wDRlf8Axor/Hcyd/3Lhwf+p7Nj/o+vV/57m0/+X5dD/k+TN/4/jzf+K5Mz/fuHH/0PW - rf8HzJT/ANCT/wDRlv8OpX//HayI/yrFn58AAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAADDC - nmAtro7/H62J/wPWmv8Ay47/AMaO/3XhxP+e6tT/mObP/5Pjy/+Q4sr/jODJ/4ffx/+C3MT/f9vC/3nb - wf9y2r7/adq7/2DauP8ZzZv/Fdae/8T/9/9WxKj/HKuI/y7IomAAAAAAAAAAAAAAAAD///8AAAAAAAAA - AAAiuZMwKKyM/x6ohf8C1Zr/AMmL/wHGjv+49OL///////////9+3ML/f9zD/4Dcwv9+28L/e9rA/3bZ - vv9w1rr/Z9S4/17Rs/9Qz63/Qcyn/3LewP////////////n///8MpH7/JbKP/zXQqUAAAAAAAAAAAP// - /wAAAAAAAAAAABymhN8dnn//BNGa/wDKjP8AxY3/sfHf/////////////////2nXt/9w1rv/c9e8/3TX - vP9x17z/a9W5/2TTtf9Y0K//SMyp/zXFoP9i07X/////////////////f/LR/wDQlf8epYT/Mb2a3wAA - AAAAAAAA////AAAAAAADlnJgFZR1/wq4iv8AzpH/AMCD/4rmzf//////////////////////WdGv/2PU - tf9p1rf/atS4/2nUtv9i0rT/Vc+u/0fKpv8zxZz/Ws+w//////////////////////8GyJL/ANCS/xLB - kv8tq4z/OMajYAAAAAD///8AAAAAAACHZt8NkW//ANKV/wDChP9i27r//////////////////////9Dx - 6P9MzKn/Vc+v/17Rsv9g0rP/XNCx/1XNrv9Fyaf/McSd/1fPr///////////////////////QM2m/ynK - oP8JzJX/C9yh/ymmhf80spPfAAAAAP///wAAcUwwAHtc/wCrfP8AyIv/AMKK//////////////////// - /////////////5Dgyv9Gyqb/TMyq/07Nq/9MzKn/Qcmj/y/Fnf9Wzq3//////////////////////57k - 0v8av5T/Lceg/yzOo/8M05v/Hr6T/zCghf80spIw////AABoRYAAclT/AL2H/wDBhf9R1rL///////// - ////////4vfw//////////////////H8+P9KzKn/Ocah/zTFnv8qwpj/Us2t//////////////////// - ////////DLqM/yDBlv8wxp//OM6m/xPPm/8Xz53/LZF5/y+fg4////8AAGNAvwB7Wf8Aw4j/ALyC/4bj - yP+g5tL/g93E/2HSsv9Pzqz/Us6s//////////////////////9Yzq//Gr2S/0jLp/////////////// - /////////////yrDm/8SvI//JMGY/zDHn/81zKT/Is2e/xTUnf8nl3v/LJJ5v////wAAXz3vAIlg/wDA - hf8AuoD/quzZ/5Hjyv9628D/ada2/1jRsP9Jy6f/a9a4//////////////////////+Y4s7///////// - //////////////////+c4tD/AbaH/xW8kf8jwZj/LcWd/y/Jn/8kzJ3/E9Ca/yGjgf8ri3Tv////AABd - PP8Ak2b/AL6D/w/Ekv+m6tf/j+HJ/3vawP9p1rf/W9Gx/0rNqf85yJ//Nsaf//////////////////// - /////////////////////////////wCwe/8AtoT/ELqP/xu+k/8jwZj/KMeb/yHKm/8QzZf/HqyG/ymI - cf////8AAF07/wCSZP8AvYL/GMWU/6Dn1P+K38f/ddi+/27Wuf+E3MX/leHN/6fm1f+l5tX/neLQ//// - ////////////////////////////////////////j9/J/27Vuv9Tzq7/JsKY/xa/kv8aw5T/FcaW/wvL - lf8aqoT/J4dw/////wAAXTv/AJFk/wC9gP8GwY3/mObQ/5rkz/+26dv/y/Hl/8Dt3/+06tz/pebV/5bg - zP+g5NL//////////////v///f7+//7+/v//////7fn2////////////tOnb/6Ll0v+v6Nj/jeDI/zXK - o/8IxJD/BMqS/xaqgv8lh2//////AABeO+8AgVf/AL1//wDBif/R9uv/1PPq/8Tv5P+36t3/rujY/6Lk - 0v+U4cv/jt7J//j8+///////+/38//f8+//2+/r/+Pz7//3+/v/m9/P/9Pv6//D6+P9/28L/jd7J/5jj - z/+h5dL/qOvX/4Hmyf8f1J//E596/yOJcO////8AAGA8vwB3U/8p06P/hufM/8Ty5f/D7+T/s+vb/6bm - 1P+c4c//j9/K/4vcyP/t+fb///7///j8/P/0+/r/8vr5//P7+f/1+/r/+/39///////i9fL/ZNO1/3HW - vP992sH/htzG/4vhyv+S5dD/mO7W/6X74v80noT/Io90v////wAAZkCAAHla/33ny/945cb/nunV/7Xr - 3v+l5tT/luDN/4ndxv992cL/1vLq//v9/P/1+/n/8vv4//L69//z+/j/9Pv5/7Xo2//x+vn///////// - //+y59n/aNS3/3LWvP932r//fNzD/4Ljyf+J7ND/l/bd/yORdf8knH6A////AABuRzAAdlT/Xc6x/23o - xv9s4MH/qurZ/5jiz/+I3cb/edjA/8ju5f/3/Pv/8vv4//H6+P/y+/j/6/f0/7np3v/7/fz//v7+/6fk - 1f+56tz///////////9h0bT/aNW4/23Wu/9v3L//dOLG/37w0f9m1rn/Hpt8/ymujTD///8AAAAAAACD - X98po4X/Z+7K/1vgvP+A4sf/jOHK/3rZwv+r59f/9Pv6/+/69//v+vf/8vr4/9fy6/9n0rf/VM6t/6Di - 0v/N7+f/adO4/1PMrf9t1Lr/i9zI/1/Rs/9h0rX/ZNe4/2bbvf9s5sb/ePfV/z2ylf8lrozfAAAAAP// - /wAAAAAAAJNsYAWQbf9U1rP/Vee//0rYsf993sb/pebV//P7+v/s+Pb/6/f1/+749v+s5tj/Vc2u/1jP - r/9ZzrD/btW5/1bOr/9Wza//Vs6v/1fOr/9Z0LD/WdCy/1vTtP9d1rX/Xt+8/2btyP9k4L//IaaF/y7D - nmAAAAAA////AAAAAAAAAAAAD6J9zyCjgv9S68L/P9+0/2Pevv/5////7/v6/+v59//j9/L/gtvF/1PN - r/9Wz7D/Wc+x/1nQsf9Zz7H/WM6w/1fPsP9UzrD/VM+w/1TPrv9U0a//U9Oy/1Tatv9Z5sD/Y/LL/zSx - lP8qupbPAAAAAAAAAAD///8AAAAAAAAAAAAYto4wGaeE/y23lP8+5rn/6/////j////w//3/ve/i/2bV - uP9Tzq7/Vc+v/1jPsP9Z0LL/WM+w/1fOsf9Wz7D/Us2w/1HOrf9Qzq3/T9Cu/0zSr/9M2LP/TeC5/1bt - xP9HxaX/KLKQ/zTPqDAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAkvpdgG6iF/y++m//e/////P///3rl - yf9G0K3/VdKy/1bPsf9Wz7H/Vs6w/1bPsP9Sza//Ucyu/0/Nrf9NzKz/S82s/0fOrP9G0a7/QdWv/0Le - tP9I6L7/Q8Ok/yitjP8yyKJgAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAmwJlgG6iF/yK3 - kP8k3q7/H9el/x7Pn/8tzKT/Q9Cs/1HQsP9Q0K7/TM6u/0nMrf9Hzaz/RMyp/0LNqf8+zqn/ONGo/zTV - qf833rD/O+S4/zvCof8orIv/MMSfYAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAA - AAAkvpdgG6iE/xukgv8gy53/HNql/xzRn/8czJz/HcmZ/yXJnP8qyp7/Lcqg/yzLn/8nypz/JMqc/yTO - n/8l1KT/KN2r/y3Tpv8nq4n/JaqJ/yzAm2AAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAato8wFKN/zxCScv8RnHn/DbqM/wjIlP8GyZT/BsaS/wbFkf8GxZH/B8WR/wfH - k/8IypX/DMmV/xG3jP8WoX3/Fph2/xqkgs8ft5EwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJVvYACGZM8Aelr/AHlZ/wCFX/8AiWL/AJlr/wCb - bP8AlGf/AI5k/wB/W/8AeFj/AHtb/wCHZd8ClXBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwSzAAaESAAGI/vwBf - Pd8AXTz/AF08/wBdPP8AXz3fAGJAvwBoRIAAcUswAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// - /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// - /wD///8A////AP///wD///8A/+AD//+AAP/+AAA//AAAH/gAAA/wAAAH4AAAA+AAAAPAAAABwAAAAYAA - AACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAwAAAAcAAAAHgAAAD4AAAA/AA - AAf4AAAP/AAAH/4AAD//gAD//+AD//////8= - - \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj b/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj index f8c6bbcc04..92d2d6b7bf 100644 --- a/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj +++ b/Tools/ArdupilotMegaPlanner/ArdupilotMega.csproj @@ -217,7 +217,7 @@ - Form + UserControl Tracker.cs @@ -232,6 +232,9 @@ Component + + UserControl + Component @@ -317,7 +320,7 @@ - Form + UserControl 3DRradio.cs @@ -509,12 +512,6 @@ SerialOutput.cs - - Form - - - Setup.cs - Form @@ -542,36 +539,144 @@ ProgressReporterDialogue.cs + + ConfigAccelerometerCalibration.cs + + + ConfigAccelerometerCalibration.cs + + + ConfigAccelerometerCalibration.cs + + + ConfigAccelerometerCalibration.cs + ConfigAccelerometerCalibration.cs + + ConfigAccelerometerCalibration.cs + + + ConfigAccelerometerCalibration.cs + ConfigArducopter.cs ConfigArduplane.cs + + ConfigBatteryMonitoring.cs + + + ConfigBatteryMonitoring.cs + + + ConfigBatteryMonitoring.cs + + + ConfigBatteryMonitoring.cs + ConfigBatteryMonitoring.cs + + ConfigBatteryMonitoring.cs + + + ConfigBatteryMonitoring.cs + + + ConfigFlightModes.cs + + + ConfigFlightModes.cs + + + ConfigFlightModes.cs + + + ConfigFlightModes.cs + ConfigFlightModes.cs + + ConfigFlightModes.cs + + + ConfigFlightModes.cs + + + ConfigHardwareOptions.cs + + + ConfigHardwareOptions.cs + + + ConfigHardwareOptions.cs + + + ConfigHardwareOptions.cs + ConfigHardwareOptions.cs + + ConfigHardwareOptions.cs + + + ConfigHardwareOptions.cs + ConfigPlanner.cs + + ConfigRadioInput.cs + + + ConfigRadioInput.cs + + + ConfigRadioInput.cs + + + ConfigRadioInput.cs + ConfigRadioInput.cs + + ConfigRadioInput.cs + + + ConfigRadioInput.cs + ConfigRawParams.cs + + ConfigTradHeli.cs + + + ConfigTradHeli.cs + + + ConfigTradHeli.cs + + + ConfigTradHeli.cs + ConfigTradHeli.cs + + ConfigTradHeli.cs + + + ConfigTradHeli.cs + Configuration.cs @@ -908,28 +1013,6 @@ SerialOutput.cs - - Setup.cs - - - Setup.cs - - - Setup.cs - - - Setup.cs - - - Setup.cs - Designer - - - Setup.cs - - - Setup.cs - Splash.cs diff --git a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewContentPanel.cs b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewContentPanel.cs new file mode 100644 index 0000000000..d936dcec12 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewContentPanel.cs @@ -0,0 +1,23 @@ +using System; +using System.Collections.Generic; +using System.Text; +using System.Windows.Forms; + +namespace ArdupilotMega.Controls.BackstageView +{ + public class BackStageViewContentPanel : UserControl + { + public event FormClosingEventHandler FormClosing; + + public void Close() + { + if (FormClosing != null) + FormClosing(this, new FormClosingEventArgs(CloseReason.UserClosing, false)); + } + + public new void OnLoad(EventArgs e) + { + base.OnLoad(e); + } + } +} diff --git a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewMenuPanel.cs b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewMenuPanel.cs index 1a9ba58375..a7387c37d2 100644 --- a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewMenuPanel.cs +++ b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackStageViewMenuPanel.cs @@ -9,7 +9,7 @@ namespace ArdupilotMega.Controls.BackstageView internal Color GradColor = Color.White; internal Color PencilBorderColor = Color.White; - private const int GradientWidth = 6; + private const int GradientWidth = 20; public BackStageViewMenuPanel() { @@ -29,5 +29,16 @@ namespace ArdupilotMega.Controls.BackstageView pevent.Graphics.DrawLine(new Pen(PencilBorderColor), Width-1,0,Width-1,Height); } + + protected override void OnResize(System.EventArgs eventargs) + { + base.OnResize(eventargs); + this.Invalidate(); + } + + public void PaintBackground(PaintEventArgs pevent) + { + OnPaintBackground(pevent); + } } } \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageView.cs b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageView.cs index edde25fc41..e84bb86cc6 100644 --- a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageView.cs +++ b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageView.cs @@ -21,17 +21,9 @@ namespace ArdupilotMega.Controls.BackstageView private BackstageViewPage _activePage; private const int ButtonSpacing = 30; private const int ButtonHeight = 30; - public BackstageViewPage SelectedPage { get { return _activePage; } } - ~BackstageView() - { - foreach (BackstageViewPage ctl in _pages) - { - if (ctl.Page != null) - ctl.Page.Dispose(); - } - this.Dispose(); - } + public BackstageViewPage SelectedPage { get { return _activePage; } } + public List Pages { get { return _pages; } } public BackstageView() { @@ -202,7 +194,7 @@ namespace ArdupilotMega.Controls.BackstageView this.ActivatePage(associatedPage); } - private void ActivatePage(BackstageViewPage associatedPage) + public void ActivatePage(BackstageViewPage associatedPage) { // deactivate the old page _activePage.Page.Visible = false; @@ -214,18 +206,27 @@ namespace ArdupilotMega.Controls.BackstageView newButton.IsSelected = true; _activePage = associatedPage; + + _activePage.Page.OnLoad(new EventArgs()); } + public void Close() + { + foreach (BackstageViewPage page in _pages) + { + page.Page.Close(); + } + } public class BackstageViewPage - { - public BackstageViewPage(Control page, string linkText) + { + public BackstageViewPage(BackStageViewContentPanel page, string linkText) { Page = page; LinkText = linkText; } - public Control Page { get; private set; } + public BackStageViewContentPanel Page { get; private set; } public string LinkText { get; set; } } } diff --git a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageViewButton.cs b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageViewButton.cs index a68c3c94e7..ab6544584a 100644 --- a/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageViewButton.cs +++ b/Tools/ArdupilotMegaPlanner/Controls/BackstageView/BackstageViewButton.cs @@ -24,12 +24,9 @@ namespace ArdupilotMega.Controls.BackstageView { this.SuspendLayout(); - SetStyle(ControlStyles.SupportsTransparentBackColor, true); - SetStyle(ControlStyles.Opaque, true); SetStyle(ControlStyles.ResizeRedraw, true); - this.BackColor = Color.Transparent; - this.Width = 100; + this.Width = 150; this.Height = 30; @@ -47,25 +44,12 @@ namespace ArdupilotMega.Controls.BackstageView if (_isSelected != value) { _isSelected = value; - //this.Parent.Refresh(); // <-- brutal, but works - - - InvalidateParentForBackground(); this.Invalidate(); } } } - // Must be a better way to redraw parent control in the area of - // the button - private void InvalidateParentForBackground() - { - var screenrect = this.RectangleToScreen(this.ClientRectangle); - var rectangleToClient = this.Parent.RectangleToClient(screenrect); - this.Parent.Invalidate(rectangleToClient); - } - protected override void OnPaintBackground(PaintEventArgs pevent) { base.OnPaintBackground(pevent); @@ -78,6 +62,8 @@ namespace ArdupilotMega.Controls.BackstageView protected override void OnPaint(PaintEventArgs pevent) { + ((BackStageViewMenuPanel)this.Parent).PaintBackground(pevent); + Graphics g = pevent.Graphics; @@ -139,7 +125,6 @@ namespace ArdupilotMega.Controls.BackstageView { _isMouseOver = true; base.OnMouseEnter(e); - InvalidateParentForBackground(); this.Invalidate(); } @@ -147,12 +132,11 @@ namespace ArdupilotMega.Controls.BackstageView { _isMouseOver = false; base.OnMouseLeave(e); - InvalidateParentForBackground(); this.Invalidate(); } - - // This IS necessary for transparency + /* + // This IS necessary for transparency - windows only..... remove it protected override CreateParams CreateParams { get @@ -163,5 +147,6 @@ namespace ArdupilotMega.Controls.BackstageView return cp; } } + */ } } \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/CurrentState.cs b/Tools/ArdupilotMegaPlanner/CurrentState.cs index e3e24d9bf0..719305e122 100644 --- a/Tools/ArdupilotMegaPlanner/CurrentState.cs +++ b/Tools/ArdupilotMegaPlanner/CurrentState.cs @@ -252,6 +252,14 @@ namespace ArdupilotMega public float brklevel { get; set; } public int armed { get; set; } + // 3dr radio + public float rssi { get; set; } + public float remrssi { get; set; } + public byte txbuffer { get; set; } + public ushort rxerrors { get; set; } + public ushort serrors { get; set; } + public ushort fixedp { get; set; } + // stats public ushort packetdropremote { get; set; } public ushort linkqualitygcs { get; set; } @@ -687,6 +695,17 @@ namespace ArdupilotMega satcount = gps.satellites_visible; } + bytearray = mavinterface.packets[MAVLink.MAVLINK_MSG_ID_RADIO]; + if (bytearray != null) + { + var radio = bytearray.ByteArrayToStructure(6); + rssi = radio.rssi; + remrssi = radio.remrssi; + txbuffer = radio.txbuf; + rxerrors = radio.rxerrors; + serrors = radio.serrors; + fixedp = radio.fixedp; + } bytearray = mavinterface.packets[MAVLink.MAVLINK_MSG_ID_GLOBAL_POSITION_INT]; if (bytearray != null) diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/Configuration.cs b/Tools/ArdupilotMegaPlanner/GCSViews/Configuration.cs index a05f045ad8..512dad7487 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/Configuration.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/Configuration.cs @@ -720,9 +720,7 @@ namespace ArdupilotMega.GCSViews else { - Setup.Setup temp = new Setup.Setup(); - - temp.Configuration = this; + GCSViews.ConfigurationView.Setup temp = new GCSViews.ConfigurationView.Setup(); ThemeManager.ApplyThemeTo(temp); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.Designer.cs index 24df58eb87..1304694720 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigAccelerometerCalibration)); this.label28 = new System.Windows.Forms.Label(); this.label16 = new System.Windows.Forms.Label(); this.label15 = new System.Windows.Forms.Label(); @@ -40,44 +41,25 @@ // // label28 // - this.label28.AutoSize = true; - this.label28.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label28.Location = new System.Drawing.Point(124, 13); + resources.ApplyResources(this.label28, "label28"); this.label28.Name = "label28"; - this.label28.Size = new System.Drawing.Size(210, 13); - this.label28.TabIndex = 15; - this.label28.Text = "Level your quad to set default accel offsets"; // // label16 // - this.label16.AutoSize = true; - this.label16.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label16.Location = new System.Drawing.Point(124, 308); + resources.ApplyResources(this.label16, "label16"); this.label16.Name = "label16"; - this.label16.Size = new System.Drawing.Size(192, 26); - this.label16.TabIndex = 13; - this.label16.Text = "NOTE: images are for presentation only\r\nwill work with hexa\'s etc"; // // label15 // - this.label15.AutoSize = true; - this.label15.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label15.Location = new System.Drawing.Point(167, 99); + resources.ApplyResources(this.label15, "label15"); this.label15.Name = "label15"; - this.label15.Size = new System.Drawing.Size(102, 13); - this.label15.TabIndex = 12; - this.label15.Text = "Frame Setup (+ or x)"; // // pictureBoxQuadX // this.pictureBoxQuadX.Cursor = System.Windows.Forms.Cursors.Hand; this.pictureBoxQuadX.Image = global::ArdupilotMega.Properties.Resources.quadx; - this.pictureBoxQuadX.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBoxQuadX.Location = new System.Drawing.Point(226, 115); + resources.ApplyResources(this.pictureBoxQuadX, "pictureBoxQuadX"); this.pictureBoxQuadX.Name = "pictureBoxQuadX"; - this.pictureBoxQuadX.Size = new System.Drawing.Size(190, 190); - this.pictureBoxQuadX.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; - this.pictureBoxQuadX.TabIndex = 11; this.pictureBoxQuadX.TabStop = false; this.pictureBoxQuadX.Click += new System.EventHandler(this.pictureBoxQuadX_Click); // @@ -85,27 +67,21 @@ // this.pictureBoxQuad.Cursor = System.Windows.Forms.Cursors.Hand; this.pictureBoxQuad.Image = global::ArdupilotMega.Properties.Resources.quad; - this.pictureBoxQuad.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBoxQuad.Location = new System.Drawing.Point(19, 115); + resources.ApplyResources(this.pictureBoxQuad, "pictureBoxQuad"); this.pictureBoxQuad.Name = "pictureBoxQuad"; - this.pictureBoxQuad.Size = new System.Drawing.Size(190, 190); - this.pictureBoxQuad.SizeMode = System.Windows.Forms.PictureBoxSizeMode.Zoom; - this.pictureBoxQuad.TabIndex = 10; this.pictureBoxQuad.TabStop = false; + this.pictureBoxQuad.Click += new System.EventHandler(this.pictureBoxQuad_Click); // // BUT_levelac2 // - this.BUT_levelac2.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_levelac2.Location = new System.Drawing.Point(181, 42); + resources.ApplyResources(this.BUT_levelac2, "BUT_levelac2"); this.BUT_levelac2.Name = "BUT_levelac2"; - this.BUT_levelac2.Size = new System.Drawing.Size(75, 23); - this.BUT_levelac2.TabIndex = 14; - this.BUT_levelac2.Text = "Level"; this.BUT_levelac2.UseVisualStyleBackColor = true; + this.BUT_levelac2.Click += new System.EventHandler(this.BUT_levelac2_Click); // // ConfigAccelerometerCalibration // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.label28); this.Controls.Add(this.label16); @@ -114,7 +90,7 @@ this.Controls.Add(this.pictureBoxQuad); this.Controls.Add(this.BUT_levelac2); this.Name = "ConfigAccelerometerCalibration"; - this.Size = new System.Drawing.Size(439, 356); + this.Load += new System.EventHandler(this.ConfigAccelerometerCalibration_Load); ((System.ComponentModel.ISupportInitialize)(this.pictureBoxQuadX)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pictureBoxQuad)).EndInit(); this.ResumeLayout(false); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.cs index fe4fe96bd2..c4023e5b5c 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.cs @@ -6,10 +6,11 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigAccelerometerCalibration : UserControl + public partial class ConfigAccelerometerCalibration : BackStageViewContentPanel { public ConfigAccelerometerCalibration() { @@ -18,7 +19,54 @@ namespace ArdupilotMega.GCSViews.ConfigurationView private void pictureBoxQuadX_Click(object sender, EventArgs e) { + try + { + MainV2.comPort.setParam("FRAME", 1f); + CustomMessageBox.Show("Set to x"); + } + catch { CustomMessageBox.Show("Set frame failed"); } + } + private void BUT_levelac2_Click(object sender, EventArgs e) + { + try + { +#if MAVLINK10 + int fixme; // needs to be accel only + MainV2.comPort.doCommand(MAVLink.MAV_CMD.PREFLIGHT_CALIBRATION,1,1,1,1,1,1,1); +#else + MainV2.comPort.doAction(MAVLink.MAV_ACTION.MAV_ACTION_CALIBRATE_ACC); +#endif + + BUT_levelac2.Text = "Complete"; + } + catch + { + CustomMessageBox.Show("Failed to level : ac2 2.0.37+ is required"); + } + } + + private void pictureBoxQuad_Click(object sender, EventArgs e) + { + try + { + MainV2.comPort.setParam("FRAME", 0f); + CustomMessageBox.Show("Set to +"); + } + catch { CustomMessageBox.Show("Set frame failed"); } + } + + private void ConfigAccelerometerCalibration_Load(object sender, EventArgs e) + { + if (!MainV2.comPort.BaseStream.IsOpen) + { + this.Enabled = false; + return; + } + else + { + this.Enabled = true; + } } } } diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.es-ES.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.es-ES.resx new file mode 100644 index 0000000000..70ad73f1af --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.es-ES.resx @@ -0,0 +1,315 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manual + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo actual: + + + Habilitar el flujo óptico + + + NOTA: Las imágenes son sólo para su presentación + + + Modo Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actual: + + + APMSetup + + + Swash-Servo posición + + + Activar Compas + + + Modo Simple + + + ArduCopter2 + + + Modo Simple + + + Ajuste Chásis (+ or x) + + + 60 + + + 1 + + + Modo Simple + + + Modo Simple + + + 2 + + + Modos + + + Modo Simple + + + 3 + + + Reset + + + -60 + + + Superior + + + Swash de Viaje + + + Manual + + + Timón de Viaje + + + Calibración del sensor de voltaje:Para calibrar el sensor, use un multímetro para medir la tensión que sale de la CES de la batería-la eliminación del circuito (se trata de cables negro y rojo en el cable de tres hilos que suministra energía a la placa APM).Luego reste 0,3 V de ese valor y entrar en él en el campo # 1 a la izquierda. + + + Calibrar Radio + + + Max + + + Modo de Vuelo 2 + + + Alabeo Max + + + Modo de Vuelo 3 + + + Cabeceo Max + + + por ejemplo, en grados 2 ° 3 'W es -2,3 + + + Modo de Vuelo 1 + + + Nivel tu quad para establecer las compensaciones por defecto acel + + + Modo de Vuelo 6 + + + Capacidad + + + Declinación + + + Activar Sonar + + + PWM 1231 - 1360 + + + Entrada Radio + + + Calibración + + + 1500 + + + Modo de Vuelo 4 + + + Modo de Vuelo 5 + + + Gyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sitio Web Declinación + + + 1500 + + + Batería + + + Cero + + + Activar Airspeed + + + 4500 + + + Restablecer los Ajustes de hardware APM + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.fr.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.fr.resx new file mode 100644 index 0000000000..1bd274beea --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.fr.resx @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuel + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Mode Courant: + + + Activ. capteur optique + + + NOTE: images pou presentation uniquement. Fonctionnel pour Hex, Octo etc... + + + Mode Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actuel: + + + APMSetup + + + Swash-Servo position + + + Activ. Boussole + + + Mode Simple + + + ArduCopter2 + + + Mode Simple + + + type de châssis (+ ou x) + + + 60 + + + 1 + + + Mode Simple + + + Mode Simple + + + 2 + + + Modes + + + Mode Simple + + + 3 + + + Réinit. + + + -60 + + + Haut + + + Mouvement Swash + + + Manuel + + + Deplac. du Gouvernail + + + Calibration du capteur de Voltage.1. Mesurer le voltage sur APM et inscrivez-le dans la boite ci-bas.2. Mesurer le voltage de la batterie et inscrivez-le dans la boite ci-bas.3. Inscrire les ampères par volt de la documentation du capteur de courant ci-bas + + + Calibrer Radio + + + Max + + + Mode de vol 2 + + + Roulis Max + + + Mode de vol 2 + + + Tangage Max + + + en degrés eg 2° 3' W est -2.3 + + + Mode de vol 1 + + + Niveler l'apareil pour copensation des accels + + + Mode de vol 6 + + + Capacité + + + Déclination + + + Activer Sonar + + + PWM 1231 - 1360 + + + Entrée Radio + + + 1500 + + + Mode de vol 4 + + + Mode de vol 5 + + + Gyro + + + PWM 1361 - 1490 + + + Matériel + + + PWM 1491 - 1620 + + + Site Web Déclination + + + 1500 + + + Batterie + + + Zéro + + + Activ. Airspeed + + + 4500 + + + RàZ tout parametres du APM + + + 1000 + + + Moniteur + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.it-IT.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.it-IT.resx new file mode 100644 index 0000000000..2b2636c813 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.it-IT.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuale + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo Corrente: + + + Abilita Flusso ottico + + + Nota: le immagini sono sono per presentazione, funzionerà con Hexa, etc. + + + Modo Semplice + + + PWM 1750 + + + + Elevatore CH1 Rev + + + PWM Corrente: + + + Imposta APM + + + Posizione del servo del piatto + + + Abilita Magnetometro + + + Modo Semplice + + + ArduCopter2 + + + Modo Semplice + + + Imposta Frame (+ or x) + + + 60 + + + 1 + + + Modo Semplice + + + Modo Semplice + + + 2 + + + Modi + + + Modo Semplice + + + 3 + + + Riavvia + + + -60 + + + Alto + + + Escursione del piatto + + + Manuale + + + Escursione Timone + + + Calibarzione del sensore di voltaggio: +1. Misura il valtaggio di ingresso di APM e inseriscilo nel box sotto +2. Misura il voltaggio della batteria e inseriscilo nel box sotto +3. Dalle caratteristiche del sensore di corrente, inserisci il valore degli ampere per volt nel box qui sotto + + + Calibrazione Radio + + + Massimo + + + Modo di volo 2 + + + Rollio massimo + + + Modo di volo 3 + + + Passo massimo + + + in gradi es 2° 3' W is -2.3 + + + Modo di volo 1 + + + Livella il quad per impostare gli accelerometri + + + Modo di volo 6 + + + Capacità + + + Declinazione + + + Attiva Sonar + + + PWM 1231 - 1360 + + + Ingresso Radio + + + Calibration + + + 1500 + + + Modo di volo 4 + + + Modo di volo 5 + + + Giroscopio + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sito Web per la Declinazione + + + 1500 + + + Batteria + + + Zero + + + Attiva Sensore Velocità + + + 4500 + + + Resetta APM ai valori di Default + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.pl.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.pl.resx new file mode 100644 index 0000000000..057b932716 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.pl.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Ręczne + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Aktualny tryb: + + + Włącz Optical Flow + + + UWAGA: Obrazy są wyłącznie do prezentacji, działają jedynie z hexa, itp. + + + Tryb prosty + + + PWM 1750 + + + + Odwr. Elevon CH1 + + + Aktualny PWM: + + + Ustawienia APM + + + Pozycja serwa płyty ster. + + + Włącz kompas + + + Tryb prosty + + + ArduCopter2 + + + Tryb prosty + + + Ustawienie ramy (+ lub x) + + + 60 + + + 1 + + + Tryb prosty + + + Tryb prosty + + + 2 + + + Tryby + + + Tryb prosty + + + 3 + + + Reset + + + -60 + + + Góra + + + Zakres ruchu płyty sterującej + + + Ręczne + + + Zakres steru kierunku + + + Kalibracja czujnika napięcia: +1. Zmierz napięcie wejściowe APM i wpisz poniżej +2. Zmierz napięcie baterii i wpisz poniżej +3. Wpisz poniżej ilość amperów/wolt [A/V] z dokumentacji czujnika prądu + + + Kalibracja radia + + + Max + + + Tryb lotu 2 + + + Max przechylenie + + + Tryb lotu 3 + + + Max pochylenie + + + w stopniech np. 2° 3' W to -2.3 + + + Tryb lotu 1 + + + Wypoziomuj quada żeby stawić domyśle offsety przysp. + + + Tryb lotu 6 + + + Pojemność + + + Deklinacja + + + Włącz sonar + + + PWM 1231 - 1360 + + + Wejścia radia + + + Calibration + + + 1500 + + + Tryb lotu 4 + + + Tryb lotu 5 + + + Żyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Strona www deklinacji + + + 1500 + + + Bateria + + + Zero + + + Włącz prędkość powietrza + + + 4500 + + + Reset APM do stawień domyślnych + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.resx index 7080a7d118..d866d08ac0 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.resx +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.resx @@ -117,4 +117,194 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + + NoControl + + + + 124, 13 + + + 210, 13 + + + 15 + + + Level your quad to set default accel offsets + + + label28 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + + + True + + + NoControl + + + 124, 308 + + + 192, 26 + + + 13 + + + NOTE: images are for presentation only +will work with hexa's etc + + + label16 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + True + + + NoControl + + + 167, 99 + + + 102, 13 + + + 12 + + + Frame Setup (+ or x) + + + label15 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + NoControl + + + 226, 115 + + + 190, 190 + + + Zoom + + + 11 + + + pictureBoxQuadX + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + NoControl + + + 19, 115 + + + 190, 190 + + + Zoom + + + 10 + + + pictureBoxQuad + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + NoControl + + + 181, 42 + + + 75, 23 + + + 14 + + + Level + + + BUT_levelac2 + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 5 + + + True + + + 6, 13 + + + 439, 356 + + + ConfigAccelerometerCalibration + + + ArdupilotMega.Controls.BackstageView.BackStageViewContentPanel, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-Hans.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-Hans.resx new file mode 100644 index 0000000000..f96892c423 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-Hans.resx @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 遥控输入 + + + 模式 + + + 硬件 + + + 电池 + + + AC2 直升机 + + + 上降副翼 (Elevon) 配置 + + + + 115, 17 + + + Elevons CH2 逆转 + + + 91, 17 + + + Elevons 逆转 + + + 115, 17 + + + Elevons CH1 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 校准遥控 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 64, 13 + + + 当前 PWM: + + + 58, 13 + + + 当前模式: + + + 64, 13 + + + 飞行模式 6 + + + 64, 13 + + + 飞行模式 5 + + + 64, 13 + + + 飞行模式 4 + + + 64, 13 + + + 飞行模式 3 + + + 64, 13 + + + 飞行模式 2 + + + 64, 13 + + + 飞行模式 1 + + + 保存模式 + + + 十进制, 2° 3' W 就是 -2.3 + + + 启用光流 + + + 67, 13 + + + 磁偏角网站 + + + 磁偏角 + + + 启用空速计 + + + 启用声纳 + + + 启用罗盘 + + + 58, 13 + + + 输入电压: + + + 94, 13 + + + 测量的电池电压: + + + 58, 13 + + + 电池电压: + + + 52, 13 + + + 分 压 比: + + + 63, 13 + + + 安培/伏特: + + + 48, 18 + + + 传感器 + + + 电压传感器校准: +1. 测量APM输入电压,输入到下方的文本框中 +2. 测量电池电压,输入到下方的文本框中 +3. 从当前的传感器的数据表中找到安培/伏特,输入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 监控器 + + + 175, 13 + + + 设置水平面的默认加速度计偏移 + + + 261, 13 + + + 注: 图片只是用于展示,设置可以用于六轴等机架 + + + 93, 13 + + + 机架设置 (+ 或 x) + + + 找平 + + + 手动 + + + 手动 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 启用 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 43, 13 + + + 方向舵 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵机 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大侧倾 + + + 55, 13 + + + 舵机行程 + + + 79, 13 + + + 斜盘水平微调 + + + 79, 13 + + + 斜盘舵机位置 + + + 重置 + + + 重置 APM 为默认设置 + + + APM设置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-TW.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-TW.resx new file mode 100644 index 0000000000..0c03fbf8ed --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigAccelerometerCalibration.zh-TW.resx @@ -0,0 +1,460 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 重置 + + + 遙控輸入 + + + 模式 + + + 硬件 + + + 電池 + + + 重置 APM 為默認設置 + + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 校準遙控 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 64, 13 + + + 當前 PWM: + + + 58, 13 + + + 當前模式: + + + 64, 13 + + + 飛行模式 6 + + + 64, 13 + + + 飛行模式 5 + + + 64, 13 + + + 飛行模式 4 + + + 64, 13 + + + 飛行模式 3 + + + 64, 13 + + + 飛行模式 2 + + + 64, 13 + + + 飛行模式 1 + + + 保存模式 + + + 67, 13 + + + 磁偏角網站 + + + 磁偏角 + + + 啟用空速計 + + + 啟用聲納 + + + 啟用羅盤 + + + 63, 13 + + + 安培/伏特: + + + 52, 13 + + + 分 壓 比: + + + 58, 13 + + + 電池電壓: + + + 94, 13 + + + 測量的電池電壓: + + + 58, 13 + + + 輸入電壓: + + + 電壓傳感器校準: +1. 測量APM輸入電壓,輸入到下方的文本框中 +2. 測量電池電壓,輸入到下方的文本框中 +3. 從當前的傳感器的數據表中找到安培/伏特,輸入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 監控器 + + + 175, 13 + + + 設置水平面的默認加速度計偏移 + + + 261, 13 + + + 注: 圖片只是用於展示,設置可以用於六軸等機架 + + + 93, 13 + + + 機架設置 (+ 或 x) + + + 找平 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 啟用 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 43, 13 + + + 方向舵 + + + 手動 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 手動 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵機 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大側傾 + + + 55, 13 + + + 舵機行程 + + + 79, 13 + + + 斜盤水平微調 + + + 79, 13 + + + 斜盤舵機位置 + + + APM設置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.cs index 772230d335..0d90aedb4b 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArducopter.cs @@ -6,10 +6,11 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigArducopter : UserControl + public partial class ConfigArducopter : BackStageViewContentPanel { public ConfigArducopter() { diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArduplane.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArduplane.cs index 8a4ac7a73b..96ae024bca 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArduplane.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigArduplane.cs @@ -6,10 +6,11 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigArduplane : UserControl + public partial class ConfigArduplane : BackStageViewContentPanel { public ConfigArduplane() { diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.Designer.cs index 2681862081..0c3c2c5a7b 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.Designer.cs @@ -64,197 +64,127 @@ this.groupBox4.Controls.Add(this.TXT_voltage); this.groupBox4.Controls.Add(this.TXT_inputvoltage); this.groupBox4.Controls.Add(this.TXT_measuredvoltage); - this.groupBox4.Location = new System.Drawing.Point(14, 172); + resources.ApplyResources(this.groupBox4, "groupBox4"); this.groupBox4.Name = "groupBox4"; - this.groupBox4.Size = new System.Drawing.Size(238, 131); - this.groupBox4.TabIndex = 50; this.groupBox4.TabStop = false; - this.groupBox4.Text = "Calibration"; // // label31 // - this.label31.AutoSize = true; - this.label31.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label31.Location = new System.Drawing.Point(5, 16); - this.label31.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + resources.ApplyResources(this.label31, "label31"); this.label31.Name = "label31"; - this.label31.Size = new System.Drawing.Size(110, 13); - this.label31.TabIndex = 29; - this.label31.Text = "1. APM Input voltage:"; // // label32 // - this.label32.AutoSize = true; - this.label32.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label32.Location = new System.Drawing.Point(5, 38); - this.label32.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + resources.ApplyResources(this.label32, "label32"); this.label32.Name = "label32"; - this.label32.Size = new System.Drawing.Size(142, 13); - this.label32.TabIndex = 30; - this.label32.Text = "2. Measured battery voltage:"; // // label33 // - this.label33.AutoSize = true; - this.label33.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label33.Location = new System.Drawing.Point(5, 60); - this.label33.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + resources.ApplyResources(this.label33, "label33"); this.label33.Name = "label33"; - this.label33.Size = new System.Drawing.Size(135, 13); - this.label33.TabIndex = 31; - this.label33.Text = "3. Battery voltage (Calced):"; // // TXT_ampspervolt // - this.TXT_ampspervolt.Location = new System.Drawing.Point(149, 100); - this.TXT_ampspervolt.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.TXT_ampspervolt, "TXT_ampspervolt"); this.TXT_ampspervolt.Name = "TXT_ampspervolt"; - this.TXT_ampspervolt.Size = new System.Drawing.Size(76, 20); - this.TXT_ampspervolt.TabIndex = 38; + this.TXT_ampspervolt.Validated += new System.EventHandler(this.TXT_ampspervolt_Validated); // // label34 // - this.label34.AutoSize = true; - this.label34.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label34.Location = new System.Drawing.Point(5, 81); - this.label34.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + resources.ApplyResources(this.label34, "label34"); this.label34.Name = "label34"; - this.label34.Size = new System.Drawing.Size(134, 13); - this.label34.TabIndex = 32; - this.label34.Text = "4. Voltage divider (Calced):"; // // TXT_divider // - this.TXT_divider.Location = new System.Drawing.Point(149, 78); - this.TXT_divider.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.TXT_divider, "TXT_divider"); this.TXT_divider.Name = "TXT_divider"; - this.TXT_divider.Size = new System.Drawing.Size(76, 20); - this.TXT_divider.TabIndex = 37; + this.TXT_divider.Validated += new System.EventHandler(this.TXT_divider_Validated); // // label35 // - this.label35.AutoSize = true; - this.label35.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label35.Location = new System.Drawing.Point(6, 103); - this.label35.Margin = new System.Windows.Forms.Padding(2, 0, 2, 0); + resources.ApplyResources(this.label35, "label35"); this.label35.Name = "label35"; - this.label35.Size = new System.Drawing.Size(101, 13); - this.label35.TabIndex = 33; - this.label35.Text = "5. Amperes per volt:"; // // TXT_voltage // - this.TXT_voltage.Location = new System.Drawing.Point(149, 57); - this.TXT_voltage.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.TXT_voltage, "TXT_voltage"); this.TXT_voltage.Name = "TXT_voltage"; this.TXT_voltage.ReadOnly = true; - this.TXT_voltage.Size = new System.Drawing.Size(76, 20); - this.TXT_voltage.TabIndex = 36; // // TXT_inputvoltage // - this.TXT_inputvoltage.Location = new System.Drawing.Point(149, 13); - this.TXT_inputvoltage.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.TXT_inputvoltage, "TXT_inputvoltage"); this.TXT_inputvoltage.Name = "TXT_inputvoltage"; - this.TXT_inputvoltage.Size = new System.Drawing.Size(76, 20); - this.TXT_inputvoltage.TabIndex = 34; + this.TXT_inputvoltage.Validated += new System.EventHandler(this.TXT_inputvoltage_Validated); // // TXT_measuredvoltage // - this.TXT_measuredvoltage.Location = new System.Drawing.Point(149, 35); - this.TXT_measuredvoltage.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.TXT_measuredvoltage, "TXT_measuredvoltage"); this.TXT_measuredvoltage.Name = "TXT_measuredvoltage"; - this.TXT_measuredvoltage.Size = new System.Drawing.Size(76, 20); - this.TXT_measuredvoltage.TabIndex = 35; + this.TXT_measuredvoltage.Validated += new System.EventHandler(this.TXT_measuredvoltage_Validated); // // label47 // - this.label47.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label47.Location = new System.Drawing.Point(106, 71); + resources.ApplyResources(this.label47, "label47"); this.label47.Name = "label47"; - this.label47.Size = new System.Drawing.Size(42, 13); - this.label47.TabIndex = 49; - this.label47.Text = "Sensor"; // // CMB_batmonsensortype // this.CMB_batmonsensortype.FormattingEnabled = true; this.CMB_batmonsensortype.Items.AddRange(new object[] { - "0: Other", - "1: AttoPilot 45A", - "2: AttoPilot 90A", - "3: AttoPilot 180A"}); - this.CMB_batmonsensortype.Location = new System.Drawing.Point(160, 68); + resources.GetString("CMB_batmonsensortype.Items"), + resources.GetString("CMB_batmonsensortype.Items1"), + resources.GetString("CMB_batmonsensortype.Items2"), + resources.GetString("CMB_batmonsensortype.Items3")}); + resources.ApplyResources(this.CMB_batmonsensortype, "CMB_batmonsensortype"); this.CMB_batmonsensortype.Name = "CMB_batmonsensortype"; - this.CMB_batmonsensortype.Size = new System.Drawing.Size(121, 21); - this.CMB_batmonsensortype.TabIndex = 48; + this.CMB_batmonsensortype.SelectedIndexChanged += new System.EventHandler(this.CMB_batmonsensortype_SelectedIndexChanged); // // textBox3 // - this.textBox3.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F); - this.textBox3.Location = new System.Drawing.Point(282, 172); - this.textBox3.Margin = new System.Windows.Forms.Padding(2); - this.textBox3.Multiline = true; + resources.ApplyResources(this.textBox3, "textBox3"); this.textBox3.Name = "textBox3"; this.textBox3.ReadOnly = true; - this.textBox3.Size = new System.Drawing.Size(219, 131); - this.textBox3.TabIndex = 47; - this.textBox3.Text = resources.GetString("textBox3.Text"); // // label29 // - this.label29.AutoSize = true; - this.label29.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label29.Location = new System.Drawing.Point(288, 45); + resources.ApplyResources(this.label29, "label29"); this.label29.Name = "label29"; - this.label29.Size = new System.Drawing.Size(48, 13); - this.label29.TabIndex = 43; - this.label29.Text = "Capacity"; // // label30 // - this.label30.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label30.Location = new System.Drawing.Point(106, 45); + resources.ApplyResources(this.label30, "label30"); this.label30.Name = "label30"; - this.label30.Size = new System.Drawing.Size(42, 13); - this.label30.TabIndex = 44; - this.label30.Text = "Monitor"; // // TXT_battcapacity // - this.TXT_battcapacity.Location = new System.Drawing.Point(349, 42); + resources.ApplyResources(this.TXT_battcapacity, "TXT_battcapacity"); this.TXT_battcapacity.Name = "TXT_battcapacity"; - this.TXT_battcapacity.Size = new System.Drawing.Size(83, 20); - this.TXT_battcapacity.TabIndex = 45; + this.TXT_battcapacity.Validated += new System.EventHandler(this.TXT_battcapacity_Validated); // // CMB_batmontype // this.CMB_batmontype.FormattingEnabled = true; this.CMB_batmontype.Items.AddRange(new object[] { - "0: Disabled", - "3: Battery Volts", - "4: Volts & Current"}); - this.CMB_batmontype.Location = new System.Drawing.Point(160, 41); + resources.GetString("CMB_batmontype.Items"), + resources.GetString("CMB_batmontype.Items1"), + resources.GetString("CMB_batmontype.Items2")}); + resources.ApplyResources(this.CMB_batmontype, "CMB_batmontype"); this.CMB_batmontype.Name = "CMB_batmontype"; - this.CMB_batmontype.Size = new System.Drawing.Size(121, 21); - this.CMB_batmontype.TabIndex = 46; + this.CMB_batmontype.SelectedIndexChanged += new System.EventHandler(this.CMB_batmontype_SelectedIndexChanged); // // pictureBox5 // this.pictureBox5.BackColor = System.Drawing.Color.White; this.pictureBox5.BackgroundImage = global::ArdupilotMega.Properties.Resources.attocurrent; - this.pictureBox5.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + resources.ApplyResources(this.pictureBox5, "pictureBox5"); this.pictureBox5.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.pictureBox5.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBox5.Location = new System.Drawing.Point(14, 16); this.pictureBox5.Name = "pictureBox5"; - this.pictureBox5.Size = new System.Drawing.Size(75, 75); - this.pictureBox5.TabIndex = 42; this.pictureBox5.TabStop = false; // // ConfigBatteryMonitoring // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.groupBox4); this.Controls.Add(this.label47); @@ -266,7 +196,7 @@ this.Controls.Add(this.CMB_batmontype); this.Controls.Add(this.pictureBox5); this.Name = "ConfigBatteryMonitoring"; - this.Size = new System.Drawing.Size(518, 322); + this.Load += new System.EventHandler(this.ConfigBatteryMonitoring_Load); this.groupBox4.ResumeLayout(false); this.groupBox4.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox5)).EndInit(); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.cs index 9ad384538a..d84fe9af39 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.cs @@ -6,14 +6,357 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigBatteryMonitoring : UserControl + public partial class ConfigBatteryMonitoring : BackStageViewContentPanel { + bool startup = false; + public ConfigBatteryMonitoring() { InitializeComponent(); } + + private void CHK_enablebattmon_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + try + { + if (((CheckBox)sender).Checked == false) + { + CMB_batmontype.SelectedIndex = 0; + } + else + { + if (CMB_batmontype.SelectedIndex <= 0) + CMB_batmontype.SelectedIndex = 1; + } + } + catch { CustomMessageBox.Show("Set BATT_MONITOR Failed"); } + } + private void TXT_battcapacity_Validating(object sender, CancelEventArgs e) + { + float ans = 0; + e.Cancel = !float.TryParse(TXT_battcapacity.Text, out ans); + } + private void TXT_battcapacity_Validated(object sender, EventArgs e) + { + if (startup || ((TextBox)sender).Enabled == false) + return; + try + { + if (MainV2.comPort.param["BATT_CAPACITY"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("BATT_CAPACITY", float.Parse(TXT_battcapacity.Text)); + } + } + catch { CustomMessageBox.Show("Set BATT_CAPACITY Failed"); } + } + private void CMB_batmontype_SelectedIndexChanged(object sender, EventArgs e) + { + if (startup) + return; + try + { + if (MainV2.comPort.param["BATT_MONITOR"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + int selection = int.Parse(CMB_batmontype.Text.Substring(0, 1)); + + CMB_batmonsensortype.Enabled = true; + + TXT_voltage.Enabled = false; + + if (selection == 0) + { + CMB_batmonsensortype.Enabled = false; + groupBox4.Enabled = false; + } + else if (selection == 4) + { + CMB_batmonsensortype.Enabled = true; + groupBox4.Enabled = true; + TXT_ampspervolt.Enabled = true; + } + else if (selection == 3) + { + groupBox4.Enabled = true; + CMB_batmonsensortype.Enabled = false; + TXT_ampspervolt.Enabled = false; + TXT_inputvoltage.Enabled = true; + TXT_measuredvoltage.Enabled = true; + TXT_divider.Enabled = true; + } + + MainV2.comPort.setParam("BATT_MONITOR", selection); + } + } + catch { CustomMessageBox.Show("Set BATT_MONITOR Failed"); } + } + private void TXT_inputvoltage_Validating(object sender, CancelEventArgs e) + { + float ans = 0; + e.Cancel = !float.TryParse(TXT_inputvoltage.Text, out ans); + } + private void TXT_inputvoltage_Validated(object sender, EventArgs e) + { + if (startup || ((TextBox)sender).Enabled == false) + return; + try + { + if (MainV2.comPort.param["INPUT_VOLTS"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("INPUT_VOLTS", float.Parse(TXT_inputvoltage.Text)); + } + } + catch { CustomMessageBox.Show("Set INPUT_VOLTS Failed"); } + } + private void TXT_measuredvoltage_Validating(object sender, CancelEventArgs e) + { + float ans = 0; + e.Cancel = !float.TryParse(TXT_measuredvoltage.Text, out ans); + } + private void TXT_measuredvoltage_Validated(object sender, EventArgs e) + { + if (startup || ((TextBox)sender).Enabled == false) + return; + try + { + float measuredvoltage = float.Parse(TXT_measuredvoltage.Text); + float voltage = float.Parse(TXT_voltage.Text); + float divider = float.Parse(TXT_divider.Text); + if (voltage == 0) + return; + float new_divider = (measuredvoltage * divider) / voltage; + TXT_divider.Text = new_divider.ToString(); + } + catch { CustomMessageBox.Show("Invalid number entered"); return; } + + try + { + if (MainV2.comPort.param["VOLT_DIVIDER"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("VOLT_DIVIDER", float.Parse(TXT_divider.Text)); + } + } + catch { CustomMessageBox.Show("Set VOLT_DIVIDER Failed"); } + } + private void TXT_divider_Validating(object sender, CancelEventArgs e) + { + float ans = 0; + e.Cancel = !float.TryParse(TXT_divider.Text, out ans); + } + private void TXT_divider_Validated(object sender, EventArgs e) + { + if (startup || ((TextBox)sender).Enabled == false) + return; + try + { + if (MainV2.comPort.param["VOLT_DIVIDER"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("VOLT_DIVIDER", float.Parse(TXT_divider.Text)); + } + } + catch { CustomMessageBox.Show("Set VOLT_DIVIDER Failed"); } + } + private void TXT_ampspervolt_Validating(object sender, CancelEventArgs e) + { + float ans = 0; + e.Cancel = !float.TryParse(TXT_ampspervolt.Text, out ans); + } + private void TXT_ampspervolt_Validated(object sender, EventArgs e) + { + if (startup || ((TextBox)sender).Enabled == false) + return; + try + { + if (MainV2.comPort.param["AMP_PER_VOLT"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("AMP_PER_VOLT", float.Parse(TXT_ampspervolt.Text)); + } + } + catch { CustomMessageBox.Show("Set AMP_PER_VOLT Failed"); } + } + + private void CMB_batmonsensortype_SelectedIndexChanged(object sender, EventArgs e) + { + int selection = int.Parse(CMB_batmonsensortype.Text.Substring(0, 1)); + + + if (selection == 1) // atto 45 + { + float maxvolt = 13.6f; + float maxamps = 44.7f; + float mvpervolt = 242.3f; + float mvperamp = 73.20f; + + // ~ 3.295v + float topvolt = (maxvolt * mvpervolt) / 1000; + // ~ 3.294v + float topamps = (maxamps * mvperamp) / 1000; + + TXT_divider.Text = (maxvolt / topvolt).ToString(); + TXT_ampspervolt.Text = (maxamps / topamps).ToString(); + } + else if (selection == 2) // atto 90 + { + float maxvolt = 50f; + float maxamps = 89.4f; + float mvpervolt = 63.69f; + float mvperamp = 36.60f; + + float topvolt = (maxvolt * mvpervolt) / 1000; + float topamps = (maxamps * mvperamp) / 1000; + + TXT_divider.Text = (maxvolt / topvolt).ToString(); + TXT_ampspervolt.Text = (maxamps / topamps).ToString(); + } + else if (selection == 3) // atto 180 + { + float maxvolt = 50f; + float maxamps = 178.8f; + float mvpervolt = 63.69f; + float mvperamp = 18.30f; + + float topvolt = (maxvolt * mvpervolt) / 1000; + float topamps = (maxamps * mvperamp) / 1000; + + TXT_divider.Text = (maxvolt / topvolt).ToString(); + TXT_ampspervolt.Text = (maxamps / topamps).ToString(); + } + + // enable to update + TXT_divider.Enabled = true; + TXT_ampspervolt.Enabled = true; + TXT_measuredvoltage.Enabled = true; + TXT_inputvoltage.Enabled = true; + + // update + TXT_ampspervolt_Validated(TXT_ampspervolt, null); + + TXT_divider_Validated(TXT_divider, null); + + // disable + TXT_divider.Enabled = false; + TXT_ampspervolt.Enabled = false; + TXT_measuredvoltage.Enabled = false; + + //reenable if needed + if (selection == 0) + { + TXT_divider.Enabled = true; + TXT_ampspervolt.Enabled = true; + TXT_measuredvoltage.Enabled = true; + TXT_inputvoltage.Enabled = true; + } + } + + private void ConfigBatteryMonitoring_Load(object sender, EventArgs e) + { + if (!MainV2.comPort.BaseStream.IsOpen) + { + this.Enabled = false; + return; + } + else + { + this.Enabled = true; + } + + startup = true; + bool not_supported = false; + if (MainV2.comPort.param["BATT_MONITOR"] != null) + { + if (MainV2.comPort.param["BATT_MONITOR"].ToString() != "0.0") + { + CMB_batmontype.SelectedIndex = getIndex(CMB_batmontype, (int)float.Parse(MainV2.comPort.param["BATT_MONITOR"].ToString())); + } + + // ignore language re . vs , + + if (TXT_ampspervolt.Text == (13.6612).ToString()) + { + CMB_batmonsensortype.SelectedIndex = 1; + } + else if (TXT_ampspervolt.Text == (27.3224).ToString()) + { + CMB_batmonsensortype.SelectedIndex = 2; + } + else if (TXT_ampspervolt.Text == (54.64481).ToString()) + { + CMB_batmonsensortype.SelectedIndex = 3; + } + else + { + CMB_batmonsensortype.SelectedIndex = 0; + } + + } + + if (MainV2.comPort.param["BATT_CAPACITY"] != null) + TXT_battcapacity.Text = MainV2.comPort.param["BATT_CAPACITY"].ToString(); + if (MainV2.comPort.param["INPUT_VOLTS"] != null) + TXT_inputvoltage.Text = MainV2.comPort.param["INPUT_VOLTS"].ToString(); + else + not_supported = true; + TXT_voltage.Text = MainV2.cs.battery_voltage.ToString(); + TXT_measuredvoltage.Text = TXT_voltage.Text; + if (MainV2.comPort.param["VOLT_DIVIDER"] != null) + TXT_divider.Text = MainV2.comPort.param["VOLT_DIVIDER"].ToString(); + else + not_supported = true; + if (MainV2.comPort.param["AMP_PER_VOLT"] != null) + TXT_ampspervolt.Text = MainV2.comPort.param["AMP_PER_VOLT"].ToString(); + else + not_supported = true; + if (not_supported) + { + TXT_inputvoltage.Enabled = false; + TXT_measuredvoltage.Enabled = false; + TXT_divider.Enabled = false; + TXT_ampspervolt.Enabled = false; + } + + startup = false; + } + + int getIndex(ComboBox ctl, int no) + { + foreach (var item in ctl.Items) + { + int ans = int.Parse(item.ToString().Substring(0, 1)); + + if (ans == no) + return ctl.Items.IndexOf(item); + } + + return -1; + } } } diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.es-ES.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.es-ES.resx new file mode 100644 index 0000000000..70ad73f1af --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.es-ES.resx @@ -0,0 +1,315 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manual + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo actual: + + + Habilitar el flujo óptico + + + NOTA: Las imágenes son sólo para su presentación + + + Modo Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actual: + + + APMSetup + + + Swash-Servo posición + + + Activar Compas + + + Modo Simple + + + ArduCopter2 + + + Modo Simple + + + Ajuste Chásis (+ or x) + + + 60 + + + 1 + + + Modo Simple + + + Modo Simple + + + 2 + + + Modos + + + Modo Simple + + + 3 + + + Reset + + + -60 + + + Superior + + + Swash de Viaje + + + Manual + + + Timón de Viaje + + + Calibración del sensor de voltaje:Para calibrar el sensor, use un multímetro para medir la tensión que sale de la CES de la batería-la eliminación del circuito (se trata de cables negro y rojo en el cable de tres hilos que suministra energía a la placa APM).Luego reste 0,3 V de ese valor y entrar en él en el campo # 1 a la izquierda. + + + Calibrar Radio + + + Max + + + Modo de Vuelo 2 + + + Alabeo Max + + + Modo de Vuelo 3 + + + Cabeceo Max + + + por ejemplo, en grados 2 ° 3 'W es -2,3 + + + Modo de Vuelo 1 + + + Nivel tu quad para establecer las compensaciones por defecto acel + + + Modo de Vuelo 6 + + + Capacidad + + + Declinación + + + Activar Sonar + + + PWM 1231 - 1360 + + + Entrada Radio + + + Calibración + + + 1500 + + + Modo de Vuelo 4 + + + Modo de Vuelo 5 + + + Gyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sitio Web Declinación + + + 1500 + + + Batería + + + Cero + + + Activar Airspeed + + + 4500 + + + Restablecer los Ajustes de hardware APM + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.fr.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.fr.resx new file mode 100644 index 0000000000..1bd274beea --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.fr.resx @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuel + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Mode Courant: + + + Activ. capteur optique + + + NOTE: images pou presentation uniquement. Fonctionnel pour Hex, Octo etc... + + + Mode Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actuel: + + + APMSetup + + + Swash-Servo position + + + Activ. Boussole + + + Mode Simple + + + ArduCopter2 + + + Mode Simple + + + type de châssis (+ ou x) + + + 60 + + + 1 + + + Mode Simple + + + Mode Simple + + + 2 + + + Modes + + + Mode Simple + + + 3 + + + Réinit. + + + -60 + + + Haut + + + Mouvement Swash + + + Manuel + + + Deplac. du Gouvernail + + + Calibration du capteur de Voltage.1. Mesurer le voltage sur APM et inscrivez-le dans la boite ci-bas.2. Mesurer le voltage de la batterie et inscrivez-le dans la boite ci-bas.3. Inscrire les ampères par volt de la documentation du capteur de courant ci-bas + + + Calibrer Radio + + + Max + + + Mode de vol 2 + + + Roulis Max + + + Mode de vol 2 + + + Tangage Max + + + en degrés eg 2° 3' W est -2.3 + + + Mode de vol 1 + + + Niveler l'apareil pour copensation des accels + + + Mode de vol 6 + + + Capacité + + + Déclination + + + Activer Sonar + + + PWM 1231 - 1360 + + + Entrée Radio + + + 1500 + + + Mode de vol 4 + + + Mode de vol 5 + + + Gyro + + + PWM 1361 - 1490 + + + Matériel + + + PWM 1491 - 1620 + + + Site Web Déclination + + + 1500 + + + Batterie + + + Zéro + + + Activ. Airspeed + + + 4500 + + + RàZ tout parametres du APM + + + 1000 + + + Moniteur + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.it-IT.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.it-IT.resx new file mode 100644 index 0000000000..2b2636c813 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.it-IT.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuale + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo Corrente: + + + Abilita Flusso ottico + + + Nota: le immagini sono sono per presentazione, funzionerà con Hexa, etc. + + + Modo Semplice + + + PWM 1750 + + + + Elevatore CH1 Rev + + + PWM Corrente: + + + Imposta APM + + + Posizione del servo del piatto + + + Abilita Magnetometro + + + Modo Semplice + + + ArduCopter2 + + + Modo Semplice + + + Imposta Frame (+ or x) + + + 60 + + + 1 + + + Modo Semplice + + + Modo Semplice + + + 2 + + + Modi + + + Modo Semplice + + + 3 + + + Riavvia + + + -60 + + + Alto + + + Escursione del piatto + + + Manuale + + + Escursione Timone + + + Calibarzione del sensore di voltaggio: +1. Misura il valtaggio di ingresso di APM e inseriscilo nel box sotto +2. Misura il voltaggio della batteria e inseriscilo nel box sotto +3. Dalle caratteristiche del sensore di corrente, inserisci il valore degli ampere per volt nel box qui sotto + + + Calibrazione Radio + + + Massimo + + + Modo di volo 2 + + + Rollio massimo + + + Modo di volo 3 + + + Passo massimo + + + in gradi es 2° 3' W is -2.3 + + + Modo di volo 1 + + + Livella il quad per impostare gli accelerometri + + + Modo di volo 6 + + + Capacità + + + Declinazione + + + Attiva Sonar + + + PWM 1231 - 1360 + + + Ingresso Radio + + + Calibration + + + 1500 + + + Modo di volo 4 + + + Modo di volo 5 + + + Giroscopio + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sito Web per la Declinazione + + + 1500 + + + Batteria + + + Zero + + + Attiva Sensore Velocità + + + 4500 + + + Resetta APM ai valori di Default + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.pl.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.pl.resx new file mode 100644 index 0000000000..057b932716 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.pl.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Ręczne + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Aktualny tryb: + + + Włącz Optical Flow + + + UWAGA: Obrazy są wyłącznie do prezentacji, działają jedynie z hexa, itp. + + + Tryb prosty + + + PWM 1750 + + + + Odwr. Elevon CH1 + + + Aktualny PWM: + + + Ustawienia APM + + + Pozycja serwa płyty ster. + + + Włącz kompas + + + Tryb prosty + + + ArduCopter2 + + + Tryb prosty + + + Ustawienie ramy (+ lub x) + + + 60 + + + 1 + + + Tryb prosty + + + Tryb prosty + + + 2 + + + Tryby + + + Tryb prosty + + + 3 + + + Reset + + + -60 + + + Góra + + + Zakres ruchu płyty sterującej + + + Ręczne + + + Zakres steru kierunku + + + Kalibracja czujnika napięcia: +1. Zmierz napięcie wejściowe APM i wpisz poniżej +2. Zmierz napięcie baterii i wpisz poniżej +3. Wpisz poniżej ilość amperów/wolt [A/V] z dokumentacji czujnika prądu + + + Kalibracja radia + + + Max + + + Tryb lotu 2 + + + Max przechylenie + + + Tryb lotu 3 + + + Max pochylenie + + + w stopniech np. 2° 3' W to -2.3 + + + Tryb lotu 1 + + + Wypoziomuj quada żeby stawić domyśle offsety przysp. + + + Tryb lotu 6 + + + Pojemność + + + Deklinacja + + + Włącz sonar + + + PWM 1231 - 1360 + + + Wejścia radia + + + Calibration + + + 1500 + + + Tryb lotu 4 + + + Tryb lotu 5 + + + Żyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Strona www deklinacji + + + 1500 + + + Bateria + + + Zero + + + Włącz prędkość powietrza + + + 4500 + + + Reset APM do stawień domyślnych + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.resx index 94b1ff7c8d..30ba0ba68e 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.resx +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.resx @@ -117,10 +117,562 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + + NoControl + + + + 5, 16 + + + 2, 0, 2, 0 + + + 110, 13 + + + 29 + + + 1. APM Input voltage: + + + label31 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 0 + + + True + + + NoControl + + + 5, 38 + + + 2, 0, 2, 0 + + + 142, 13 + + + 30 + + + 2. Measured battery voltage: + + + label32 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 1 + + + True + + + NoControl + + + 5, 60 + + + 2, 0, 2, 0 + + + 135, 13 + + + 31 + + + 3. Battery voltage (Calced): + + + label33 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 2 + + + 149, 100 + + + 2, 2, 2, 2 + + + 76, 20 + + + 38 + + + TXT_ampspervolt + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 3 + + + True + + + NoControl + + + 5, 81 + + + 2, 0, 2, 0 + + + 134, 13 + + + 32 + + + 4. Voltage divider (Calced): + + + label34 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 4 + + + 149, 78 + + + 2, 2, 2, 2 + + + 76, 20 + + + 37 + + + TXT_divider + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 5 + + + True + + + NoControl + + + 6, 103 + + + 2, 0, 2, 0 + + + 101, 13 + + + 33 + + + 5. Amperes per volt: + + + label35 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 6 + + + 149, 57 + + + 2, 2, 2, 2 + + + 76, 20 + + + 36 + + + TXT_voltage + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 7 + + + 149, 13 + + + 2, 2, 2, 2 + + + 76, 20 + + + 34 + + + TXT_inputvoltage + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 8 + + + 149, 35 + + + 2, 2, 2, 2 + + + 76, 20 + + + 35 + + + TXT_measuredvoltage + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox4 + + + 9 + + + 14, 172 + + + 238, 131 + + + 50 + + + Calibration + + + groupBox4 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + + + NoControl + + + 106, 71 + + + 42, 13 + + + 49 + + + Sensor + + + label47 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + 0: Other + + + 1: AttoPilot 45A + + + 2: AttoPilot 90A + + + 3: AttoPilot 180A + + + 160, 68 + + + 121, 21 + + + 48 + + + CMB_batmonsensortype + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + Microsoft Sans Serif, 8.25pt + + + 282, 172 + + + 2, 2, 2, 2 + + + True + + + 219, 131 + + + 47 + Voltage sensor calibration: To calibrate your sensor, use a multimeter to measure the voltage coming out of your ESC's battery-elimination circuit (these are black and red wires in the three-wire cable that is powering your APM board). Then subtract 0.3v from that value and enter it in field #1 at left. + + textBox3 + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + True + + + NoControl + + + 288, 45 + + + 48, 13 + + + 43 + + + Capacity + + + label29 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + NoControl + + + 106, 45 + + + 42, 13 + + + 44 + + + Monitor + + + label30 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 5 + + + 349, 42 + + + 83, 20 + + + 45 + + + TXT_battcapacity + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 6 + + + 0: Disabled + + + 3: Battery Volts + + + 4: Volts & Current + + + 160, 41 + + + 121, 21 + + + 46 + + + CMB_batmontype + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 7 + + + Zoom + + + NoControl + + + 14, 16 + + + 75, 75 + + + 42 + + + pictureBox5 + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 8 + + + True + + + 6, 13 + + + 518, 322 + + + ConfigBatteryMonitoring + + + System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-Hans.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-Hans.resx new file mode 100644 index 0000000000..f96892c423 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-Hans.resx @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 遥控输入 + + + 模式 + + + 硬件 + + + 电池 + + + AC2 直升机 + + + 上降副翼 (Elevon) 配置 + + + + 115, 17 + + + Elevons CH2 逆转 + + + 91, 17 + + + Elevons 逆转 + + + 115, 17 + + + Elevons CH1 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 校准遥控 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 64, 13 + + + 当前 PWM: + + + 58, 13 + + + 当前模式: + + + 64, 13 + + + 飞行模式 6 + + + 64, 13 + + + 飞行模式 5 + + + 64, 13 + + + 飞行模式 4 + + + 64, 13 + + + 飞行模式 3 + + + 64, 13 + + + 飞行模式 2 + + + 64, 13 + + + 飞行模式 1 + + + 保存模式 + + + 十进制, 2° 3' W 就是 -2.3 + + + 启用光流 + + + 67, 13 + + + 磁偏角网站 + + + 磁偏角 + + + 启用空速计 + + + 启用声纳 + + + 启用罗盘 + + + 58, 13 + + + 输入电压: + + + 94, 13 + + + 测量的电池电压: + + + 58, 13 + + + 电池电压: + + + 52, 13 + + + 分 压 比: + + + 63, 13 + + + 安培/伏特: + + + 48, 18 + + + 传感器 + + + 电压传感器校准: +1. 测量APM输入电压,输入到下方的文本框中 +2. 测量电池电压,输入到下方的文本框中 +3. 从当前的传感器的数据表中找到安培/伏特,输入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 监控器 + + + 175, 13 + + + 设置水平面的默认加速度计偏移 + + + 261, 13 + + + 注: 图片只是用于展示,设置可以用于六轴等机架 + + + 93, 13 + + + 机架设置 (+ 或 x) + + + 找平 + + + 手动 + + + 手动 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 启用 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 43, 13 + + + 方向舵 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵机 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大侧倾 + + + 55, 13 + + + 舵机行程 + + + 79, 13 + + + 斜盘水平微调 + + + 79, 13 + + + 斜盘舵机位置 + + + 重置 + + + 重置 APM 为默认设置 + + + APM设置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-TW.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-TW.resx new file mode 100644 index 0000000000..0c03fbf8ed --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigBatteryMonitoring.zh-TW.resx @@ -0,0 +1,460 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 重置 + + + 遙控輸入 + + + 模式 + + + 硬件 + + + 電池 + + + 重置 APM 為默認設置 + + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 校準遙控 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 64, 13 + + + 當前 PWM: + + + 58, 13 + + + 當前模式: + + + 64, 13 + + + 飛行模式 6 + + + 64, 13 + + + 飛行模式 5 + + + 64, 13 + + + 飛行模式 4 + + + 64, 13 + + + 飛行模式 3 + + + 64, 13 + + + 飛行模式 2 + + + 64, 13 + + + 飛行模式 1 + + + 保存模式 + + + 67, 13 + + + 磁偏角網站 + + + 磁偏角 + + + 啟用空速計 + + + 啟用聲納 + + + 啟用羅盤 + + + 63, 13 + + + 安培/伏特: + + + 52, 13 + + + 分 壓 比: + + + 58, 13 + + + 電池電壓: + + + 94, 13 + + + 測量的電池電壓: + + + 58, 13 + + + 輸入電壓: + + + 電壓傳感器校準: +1. 測量APM輸入電壓,輸入到下方的文本框中 +2. 測量電池電壓,輸入到下方的文本框中 +3. 從當前的傳感器的數據表中找到安培/伏特,輸入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 監控器 + + + 175, 13 + + + 設置水平面的默認加速度計偏移 + + + 261, 13 + + + 注: 圖片只是用於展示,設置可以用於六軸等機架 + + + 93, 13 + + + 機架設置 (+ 或 x) + + + 找平 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 啟用 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 43, 13 + + + 方向舵 + + + 手動 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 手動 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵機 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大側傾 + + + 55, 13 + + + 舵機行程 + + + 79, 13 + + + 斜盤水平微調 + + + 79, 13 + + + 斜盤舵機位置 + + + APM設置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.Designer.cs index 829ad3689e..6117c75a51 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.Designer.cs @@ -29,6 +29,7 @@ private void InitializeComponent() { this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigFlightModes)); this.CB_simple6 = new System.Windows.Forms.CheckBox(); this.CB_simple5 = new System.Windows.Forms.CheckBox(); this.CB_simple4 = new System.Windows.Forms.CheckBox(); @@ -39,6 +40,7 @@ this.LBL_flightmodepwm = new System.Windows.Forms.Label(); this.label13 = new System.Windows.Forms.Label(); this.lbl_currentmode = new System.Windows.Forms.Label(); + this.currentStateBindingSource = new System.Windows.Forms.BindingSource(this.components); this.label12 = new System.Windows.Forms.Label(); this.label11 = new System.Windows.Forms.Label(); this.label10 = new System.Windows.Forms.Label(); @@ -58,192 +60,100 @@ this.label1 = new System.Windows.Forms.Label(); this.CMB_fmode1 = new System.Windows.Forms.ComboBox(); this.BUT_SaveModes = new ArdupilotMega.MyButton(); - this.currentStateBindingSource = new System.Windows.Forms.BindingSource(this.components); ((System.ComponentModel.ISupportInitialize)(this.currentStateBindingSource)).BeginInit(); this.SuspendLayout(); // // CB_simple6 // - this.CB_simple6.AutoSize = true; - this.CB_simple6.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CB_simple6.Location = new System.Drawing.Point(232, 200); - this.CB_simple6.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.CB_simple6, "CB_simple6"); this.CB_simple6.Name = "CB_simple6"; - this.CB_simple6.Size = new System.Drawing.Size(87, 17); - this.CB_simple6.TabIndex = 148; - this.CB_simple6.Text = "Simple Mode"; this.CB_simple6.UseVisualStyleBackColor = true; // // CB_simple5 // - this.CB_simple5.AutoSize = true; - this.CB_simple5.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CB_simple5.Location = new System.Drawing.Point(232, 173); - this.CB_simple5.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.CB_simple5, "CB_simple5"); this.CB_simple5.Name = "CB_simple5"; - this.CB_simple5.Size = new System.Drawing.Size(87, 17); - this.CB_simple5.TabIndex = 147; - this.CB_simple5.Text = "Simple Mode"; this.CB_simple5.UseVisualStyleBackColor = true; // // CB_simple4 // - this.CB_simple4.AutoSize = true; - this.CB_simple4.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CB_simple4.Location = new System.Drawing.Point(232, 146); - this.CB_simple4.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.CB_simple4, "CB_simple4"); this.CB_simple4.Name = "CB_simple4"; - this.CB_simple4.Size = new System.Drawing.Size(87, 17); - this.CB_simple4.TabIndex = 146; - this.CB_simple4.Text = "Simple Mode"; this.CB_simple4.UseVisualStyleBackColor = true; // // CB_simple3 // - this.CB_simple3.AutoSize = true; - this.CB_simple3.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CB_simple3.Location = new System.Drawing.Point(232, 119); - this.CB_simple3.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.CB_simple3, "CB_simple3"); this.CB_simple3.Name = "CB_simple3"; - this.CB_simple3.Size = new System.Drawing.Size(87, 17); - this.CB_simple3.TabIndex = 145; - this.CB_simple3.Text = "Simple Mode"; this.CB_simple3.UseVisualStyleBackColor = true; // // CB_simple2 // - this.CB_simple2.AutoSize = true; - this.CB_simple2.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CB_simple2.Location = new System.Drawing.Point(232, 92); - this.CB_simple2.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.CB_simple2, "CB_simple2"); this.CB_simple2.Name = "CB_simple2"; - this.CB_simple2.Size = new System.Drawing.Size(87, 17); - this.CB_simple2.TabIndex = 144; - this.CB_simple2.Text = "Simple Mode"; this.CB_simple2.UseVisualStyleBackColor = true; // // CB_simple1 // - this.CB_simple1.AutoSize = true; - this.CB_simple1.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CB_simple1.Location = new System.Drawing.Point(232, 65); - this.CB_simple1.Margin = new System.Windows.Forms.Padding(2); + resources.ApplyResources(this.CB_simple1, "CB_simple1"); this.CB_simple1.Name = "CB_simple1"; - this.CB_simple1.Size = new System.Drawing.Size(87, 17); - this.CB_simple1.TabIndex = 143; - this.CB_simple1.Text = "Simple Mode"; this.CB_simple1.UseVisualStyleBackColor = true; // // label14 // - this.label14.AutoSize = true; - this.label14.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label14.Location = new System.Drawing.Point(94, 32); + resources.ApplyResources(this.label14, "label14"); this.label14.Name = "label14"; - this.label14.Size = new System.Drawing.Size(74, 13); - this.label14.TabIndex = 142; - this.label14.Text = "Current PWM:"; // // LBL_flightmodepwm // - this.LBL_flightmodepwm.AutoSize = true; - this.LBL_flightmodepwm.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.LBL_flightmodepwm.Location = new System.Drawing.Point(174, 32); + resources.ApplyResources(this.LBL_flightmodepwm, "LBL_flightmodepwm"); this.LBL_flightmodepwm.Name = "LBL_flightmodepwm"; - this.LBL_flightmodepwm.Size = new System.Drawing.Size(13, 13); - this.LBL_flightmodepwm.TabIndex = 141; - this.LBL_flightmodepwm.Text = "0"; // // label13 // - this.label13.AutoSize = true; - this.label13.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label13.Location = new System.Drawing.Point(94, 15); + resources.ApplyResources(this.label13, "label13"); this.label13.Name = "label13"; - this.label13.Size = new System.Drawing.Size(74, 13); - this.label13.TabIndex = 140; - this.label13.Text = "Current Mode:"; // // lbl_currentmode // - this.lbl_currentmode.AutoSize = true; + resources.ApplyResources(this.lbl_currentmode, "lbl_currentmode"); this.lbl_currentmode.DataBindings.Add(new System.Windows.Forms.Binding("Text", this.currentStateBindingSource, "mode", true)); - this.lbl_currentmode.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.lbl_currentmode.Location = new System.Drawing.Point(174, 15); this.lbl_currentmode.Name = "lbl_currentmode"; - this.lbl_currentmode.Size = new System.Drawing.Size(42, 13); - this.lbl_currentmode.TabIndex = 139; - this.lbl_currentmode.Text = "Manual"; // // label12 // - this.label12.AutoSize = true; - this.label12.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label12.Location = new System.Drawing.Point(358, 66); + resources.ApplyResources(this.label12, "label12"); this.label12.Name = "label12"; - this.label12.Size = new System.Drawing.Size(76, 13); - this.label12.TabIndex = 138; - this.label12.Text = "PWM 0 - 1230"; // // label11 // - this.label11.AutoSize = true; - this.label11.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label11.Location = new System.Drawing.Point(358, 201); + resources.ApplyResources(this.label11, "label11"); this.label11.Name = "label11"; - this.label11.Size = new System.Drawing.Size(70, 13); - this.label11.TabIndex = 137; - this.label11.Text = "PWM 1750 +"; // // label10 // - this.label10.AutoSize = true; - this.label10.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label10.Location = new System.Drawing.Point(358, 174); + resources.ApplyResources(this.label10, "label10"); this.label10.Name = "label10"; - this.label10.Size = new System.Drawing.Size(94, 13); - this.label10.TabIndex = 136; - this.label10.Text = "PWM 1621 - 1749"; // // label9 // - this.label9.AutoSize = true; - this.label9.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label9.Location = new System.Drawing.Point(358, 147); + resources.ApplyResources(this.label9, "label9"); this.label9.Name = "label9"; - this.label9.Size = new System.Drawing.Size(94, 13); - this.label9.TabIndex = 135; - this.label9.Text = "PWM 1491 - 1620"; // // label8 // - this.label8.AutoSize = true; - this.label8.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label8.Location = new System.Drawing.Point(358, 120); + resources.ApplyResources(this.label8, "label8"); this.label8.Name = "label8"; - this.label8.Size = new System.Drawing.Size(94, 13); - this.label8.TabIndex = 134; - this.label8.Text = "PWM 1361 - 1490"; // // label7 // - this.label7.AutoSize = true; - this.label7.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label7.Location = new System.Drawing.Point(358, 93); + resources.ApplyResources(this.label7, "label7"); this.label7.Name = "label7"; - this.label7.Size = new System.Drawing.Size(94, 13); - this.label7.TabIndex = 133; - this.label7.Text = "PWM 1231 - 1360"; // // label6 // - this.label6.AutoSize = true; - this.label6.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label6.Location = new System.Drawing.Point(20, 201); + resources.ApplyResources(this.label6, "label6"); this.label6.Name = "label6"; - this.label6.Size = new System.Drawing.Size(71, 13); - this.label6.TabIndex = 131; - this.label6.Text = "Flight Mode 6"; // // CMB_fmode6 // @@ -251,20 +161,13 @@ this.CMB_fmode6.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.CMB_fmode6.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.CMB_fmode6.FormattingEnabled = true; - this.CMB_fmode6.Location = new System.Drawing.Point(97, 198); + resources.ApplyResources(this.CMB_fmode6, "CMB_fmode6"); this.CMB_fmode6.Name = "CMB_fmode6"; - this.CMB_fmode6.Size = new System.Drawing.Size(121, 21); - this.CMB_fmode6.TabIndex = 130; // // label5 // - this.label5.AutoSize = true; - this.label5.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label5.Location = new System.Drawing.Point(20, 174); + resources.ApplyResources(this.label5, "label5"); this.label5.Name = "label5"; - this.label5.Size = new System.Drawing.Size(71, 13); - this.label5.TabIndex = 129; - this.label5.Text = "Flight Mode 5"; // // CMB_fmode5 // @@ -272,20 +175,13 @@ this.CMB_fmode5.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.CMB_fmode5.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.CMB_fmode5.FormattingEnabled = true; - this.CMB_fmode5.Location = new System.Drawing.Point(97, 171); + resources.ApplyResources(this.CMB_fmode5, "CMB_fmode5"); this.CMB_fmode5.Name = "CMB_fmode5"; - this.CMB_fmode5.Size = new System.Drawing.Size(121, 21); - this.CMB_fmode5.TabIndex = 128; // // label4 // - this.label4.AutoSize = true; - this.label4.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label4.Location = new System.Drawing.Point(20, 147); + resources.ApplyResources(this.label4, "label4"); this.label4.Name = "label4"; - this.label4.Size = new System.Drawing.Size(71, 13); - this.label4.TabIndex = 127; - this.label4.Text = "Flight Mode 4"; // // CMB_fmode4 // @@ -293,20 +189,13 @@ this.CMB_fmode4.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.CMB_fmode4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.CMB_fmode4.FormattingEnabled = true; - this.CMB_fmode4.Location = new System.Drawing.Point(97, 144); + resources.ApplyResources(this.CMB_fmode4, "CMB_fmode4"); this.CMB_fmode4.Name = "CMB_fmode4"; - this.CMB_fmode4.Size = new System.Drawing.Size(121, 21); - this.CMB_fmode4.TabIndex = 126; // // label3 // - this.label3.AutoSize = true; - this.label3.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label3.Location = new System.Drawing.Point(20, 120); + resources.ApplyResources(this.label3, "label3"); this.label3.Name = "label3"; - this.label3.Size = new System.Drawing.Size(71, 13); - this.label3.TabIndex = 125; - this.label3.Text = "Flight Mode 3"; // // CMB_fmode3 // @@ -314,20 +203,13 @@ this.CMB_fmode3.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.CMB_fmode3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.CMB_fmode3.FormattingEnabled = true; - this.CMB_fmode3.Location = new System.Drawing.Point(97, 117); + resources.ApplyResources(this.CMB_fmode3, "CMB_fmode3"); this.CMB_fmode3.Name = "CMB_fmode3"; - this.CMB_fmode3.Size = new System.Drawing.Size(121, 21); - this.CMB_fmode3.TabIndex = 124; // // label2 // - this.label2.AutoSize = true; - this.label2.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label2.Location = new System.Drawing.Point(20, 93); + resources.ApplyResources(this.label2, "label2"); this.label2.Name = "label2"; - this.label2.Size = new System.Drawing.Size(71, 13); - this.label2.TabIndex = 123; - this.label2.Text = "Flight Mode 2"; // // CMB_fmode2 // @@ -335,20 +217,13 @@ this.CMB_fmode2.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.CMB_fmode2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.CMB_fmode2.FormattingEnabled = true; - this.CMB_fmode2.Location = new System.Drawing.Point(97, 90); + resources.ApplyResources(this.CMB_fmode2, "CMB_fmode2"); this.CMB_fmode2.Name = "CMB_fmode2"; - this.CMB_fmode2.Size = new System.Drawing.Size(121, 21); - this.CMB_fmode2.TabIndex = 122; // // label1 // - this.label1.AutoSize = true; - this.label1.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label1.Location = new System.Drawing.Point(20, 66); + resources.ApplyResources(this.label1, "label1"); this.label1.Name = "label1"; - this.label1.Size = new System.Drawing.Size(71, 13); - this.label1.TabIndex = 121; - this.label1.Text = "Flight Mode 1"; // // CMB_fmode1 // @@ -356,25 +231,19 @@ this.CMB_fmode1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems; this.CMB_fmode1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList; this.CMB_fmode1.FormattingEnabled = true; - this.CMB_fmode1.Location = new System.Drawing.Point(97, 63); + resources.ApplyResources(this.CMB_fmode1, "CMB_fmode1"); this.CMB_fmode1.Name = "CMB_fmode1"; - this.CMB_fmode1.Size = new System.Drawing.Size(121, 21); - this.CMB_fmode1.TabIndex = 120; // // BUT_SaveModes // - this.BUT_SaveModes.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_SaveModes.Location = new System.Drawing.Point(97, 225); + resources.ApplyResources(this.BUT_SaveModes, "BUT_SaveModes"); this.BUT_SaveModes.Name = "BUT_SaveModes"; - this.BUT_SaveModes.Size = new System.Drawing.Size(121, 23); - this.BUT_SaveModes.TabIndex = 132; - this.BUT_SaveModes.Text = "Save Modes"; this.BUT_SaveModes.UseVisualStyleBackColor = true; this.BUT_SaveModes.Click += new System.EventHandler(this.BUT_SaveModes_Click); // // ConfigFlightModes // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.CB_simple6); this.Controls.Add(this.CB_simple5); @@ -406,7 +275,6 @@ this.Controls.Add(this.CMB_fmode1); this.Controls.Add(this.BUT_SaveModes); this.Name = "ConfigFlightModes"; - this.Size = new System.Drawing.Size(500, 270); this.Load += new System.EventHandler(this.ConfigFlightModes_Load); ((System.ComponentModel.ISupportInitialize)(this.currentStateBindingSource)).EndInit(); this.ResumeLayout(false); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.cs index d9acf7002c..58994c233e 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.cs @@ -6,10 +6,11 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigFlightModes : UserControl + public partial class ConfigFlightModes : BackStageViewContentPanel { Timer timer = new Timer(); @@ -138,6 +139,16 @@ namespace ArdupilotMega.GCSViews.ConfigurationView private void ConfigFlightModes_Load(object sender, EventArgs e) { + if (!MainV2.comPort.BaseStream.IsOpen) + { + this.Enabled = false; + return; + } + else + { + this.Enabled = true; + } + if (MainV2.cs.firmware == MainV2.Firmwares.ArduPlane) // APM { CB_simple1.Visible = false; diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.es-ES.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.es-ES.resx new file mode 100644 index 0000000000..70ad73f1af --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.es-ES.resx @@ -0,0 +1,315 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manual + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo actual: + + + Habilitar el flujo óptico + + + NOTA: Las imágenes son sólo para su presentación + + + Modo Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actual: + + + APMSetup + + + Swash-Servo posición + + + Activar Compas + + + Modo Simple + + + ArduCopter2 + + + Modo Simple + + + Ajuste Chásis (+ or x) + + + 60 + + + 1 + + + Modo Simple + + + Modo Simple + + + 2 + + + Modos + + + Modo Simple + + + 3 + + + Reset + + + -60 + + + Superior + + + Swash de Viaje + + + Manual + + + Timón de Viaje + + + Calibración del sensor de voltaje:Para calibrar el sensor, use un multímetro para medir la tensión que sale de la CES de la batería-la eliminación del circuito (se trata de cables negro y rojo en el cable de tres hilos que suministra energía a la placa APM).Luego reste 0,3 V de ese valor y entrar en él en el campo # 1 a la izquierda. + + + Calibrar Radio + + + Max + + + Modo de Vuelo 2 + + + Alabeo Max + + + Modo de Vuelo 3 + + + Cabeceo Max + + + por ejemplo, en grados 2 ° 3 'W es -2,3 + + + Modo de Vuelo 1 + + + Nivel tu quad para establecer las compensaciones por defecto acel + + + Modo de Vuelo 6 + + + Capacidad + + + Declinación + + + Activar Sonar + + + PWM 1231 - 1360 + + + Entrada Radio + + + Calibración + + + 1500 + + + Modo de Vuelo 4 + + + Modo de Vuelo 5 + + + Gyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sitio Web Declinación + + + 1500 + + + Batería + + + Cero + + + Activar Airspeed + + + 4500 + + + Restablecer los Ajustes de hardware APM + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.fr.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.fr.resx new file mode 100644 index 0000000000..1bd274beea --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.fr.resx @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuel + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Mode Courant: + + + Activ. capteur optique + + + NOTE: images pou presentation uniquement. Fonctionnel pour Hex, Octo etc... + + + Mode Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actuel: + + + APMSetup + + + Swash-Servo position + + + Activ. Boussole + + + Mode Simple + + + ArduCopter2 + + + Mode Simple + + + type de châssis (+ ou x) + + + 60 + + + 1 + + + Mode Simple + + + Mode Simple + + + 2 + + + Modes + + + Mode Simple + + + 3 + + + Réinit. + + + -60 + + + Haut + + + Mouvement Swash + + + Manuel + + + Deplac. du Gouvernail + + + Calibration du capteur de Voltage.1. Mesurer le voltage sur APM et inscrivez-le dans la boite ci-bas.2. Mesurer le voltage de la batterie et inscrivez-le dans la boite ci-bas.3. Inscrire les ampères par volt de la documentation du capteur de courant ci-bas + + + Calibrer Radio + + + Max + + + Mode de vol 2 + + + Roulis Max + + + Mode de vol 2 + + + Tangage Max + + + en degrés eg 2° 3' W est -2.3 + + + Mode de vol 1 + + + Niveler l'apareil pour copensation des accels + + + Mode de vol 6 + + + Capacité + + + Déclination + + + Activer Sonar + + + PWM 1231 - 1360 + + + Entrée Radio + + + 1500 + + + Mode de vol 4 + + + Mode de vol 5 + + + Gyro + + + PWM 1361 - 1490 + + + Matériel + + + PWM 1491 - 1620 + + + Site Web Déclination + + + 1500 + + + Batterie + + + Zéro + + + Activ. Airspeed + + + 4500 + + + RàZ tout parametres du APM + + + 1000 + + + Moniteur + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.it-IT.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.it-IT.resx new file mode 100644 index 0000000000..2b2636c813 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.it-IT.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuale + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo Corrente: + + + Abilita Flusso ottico + + + Nota: le immagini sono sono per presentazione, funzionerà con Hexa, etc. + + + Modo Semplice + + + PWM 1750 + + + + Elevatore CH1 Rev + + + PWM Corrente: + + + Imposta APM + + + Posizione del servo del piatto + + + Abilita Magnetometro + + + Modo Semplice + + + ArduCopter2 + + + Modo Semplice + + + Imposta Frame (+ or x) + + + 60 + + + 1 + + + Modo Semplice + + + Modo Semplice + + + 2 + + + Modi + + + Modo Semplice + + + 3 + + + Riavvia + + + -60 + + + Alto + + + Escursione del piatto + + + Manuale + + + Escursione Timone + + + Calibarzione del sensore di voltaggio: +1. Misura il valtaggio di ingresso di APM e inseriscilo nel box sotto +2. Misura il voltaggio della batteria e inseriscilo nel box sotto +3. Dalle caratteristiche del sensore di corrente, inserisci il valore degli ampere per volt nel box qui sotto + + + Calibrazione Radio + + + Massimo + + + Modo di volo 2 + + + Rollio massimo + + + Modo di volo 3 + + + Passo massimo + + + in gradi es 2° 3' W is -2.3 + + + Modo di volo 1 + + + Livella il quad per impostare gli accelerometri + + + Modo di volo 6 + + + Capacità + + + Declinazione + + + Attiva Sonar + + + PWM 1231 - 1360 + + + Ingresso Radio + + + Calibration + + + 1500 + + + Modo di volo 4 + + + Modo di volo 5 + + + Giroscopio + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sito Web per la Declinazione + + + 1500 + + + Batteria + + + Zero + + + Attiva Sensore Velocità + + + 4500 + + + Resetta APM ai valori di Default + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.pl.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.pl.resx new file mode 100644 index 0000000000..057b932716 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.pl.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Ręczne + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Aktualny tryb: + + + Włącz Optical Flow + + + UWAGA: Obrazy są wyłącznie do prezentacji, działają jedynie z hexa, itp. + + + Tryb prosty + + + PWM 1750 + + + + Odwr. Elevon CH1 + + + Aktualny PWM: + + + Ustawienia APM + + + Pozycja serwa płyty ster. + + + Włącz kompas + + + Tryb prosty + + + ArduCopter2 + + + Tryb prosty + + + Ustawienie ramy (+ lub x) + + + 60 + + + 1 + + + Tryb prosty + + + Tryb prosty + + + 2 + + + Tryby + + + Tryb prosty + + + 3 + + + Reset + + + -60 + + + Góra + + + Zakres ruchu płyty sterującej + + + Ręczne + + + Zakres steru kierunku + + + Kalibracja czujnika napięcia: +1. Zmierz napięcie wejściowe APM i wpisz poniżej +2. Zmierz napięcie baterii i wpisz poniżej +3. Wpisz poniżej ilość amperów/wolt [A/V] z dokumentacji czujnika prądu + + + Kalibracja radia + + + Max + + + Tryb lotu 2 + + + Max przechylenie + + + Tryb lotu 3 + + + Max pochylenie + + + w stopniech np. 2° 3' W to -2.3 + + + Tryb lotu 1 + + + Wypoziomuj quada żeby stawić domyśle offsety przysp. + + + Tryb lotu 6 + + + Pojemność + + + Deklinacja + + + Włącz sonar + + + PWM 1231 - 1360 + + + Wejścia radia + + + Calibration + + + 1500 + + + Tryb lotu 4 + + + Tryb lotu 5 + + + Żyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Strona www deklinacji + + + 1500 + + + Bateria + + + Zero + + + Włącz prędkość powietrza + + + 4500 + + + Reset APM do stawień domyślnych + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.resx index ff1f88db64..a4992dbe3e 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.resx +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.resx @@ -117,10 +117,862 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + + NoControl + + + + 232, 200 + + + 2, 2, 2, 2 + + + 87, 17 + + + 148 + + + Simple Mode + + + CB_simple6 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + + + True + + + NoControl + + + 232, 173 + + + 2, 2, 2, 2 + + + 87, 17 + + + 147 + + + Simple Mode + + + CB_simple5 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + True + + + NoControl + + + 232, 146 + + + 2, 2, 2, 2 + + + 87, 17 + + + 146 + + + Simple Mode + + + CB_simple4 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + True + + + NoControl + + + 232, 119 + + + 2, 2, 2, 2 + + + 87, 17 + + + 145 + + + Simple Mode + + + CB_simple3 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + True + + + NoControl + + + 232, 92 + + + 2, 2, 2, 2 + + + 87, 17 + + + 144 + + + Simple Mode + + + CB_simple2 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + True + + + NoControl + + + 232, 65 + + + 2, 2, 2, 2 + + + 87, 17 + + + 143 + + + Simple Mode + + + CB_simple1 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 5 + + + True + + + NoControl + + + 94, 32 + + + 74, 13 + + + 142 + + + Current PWM: + + + label14 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 6 + + + True + + + NoControl + + + 174, 32 + + + 13, 13 + + + 141 + + + 0 + + + LBL_flightmodepwm + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 7 + + + True + + + NoControl + + + 94, 15 + + + 74, 13 + + + 140 + + + Current Mode: + + + label13 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 8 + + + True + 17, 17 - - 17, 17 + + NoControl + + + 174, 15 + + + 42, 13 + + + 139 + + + Manual + + + lbl_currentmode + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 9 + + + True + + + NoControl + + + 358, 66 + + + 76, 13 + + + 138 + + + PWM 0 - 1230 + + + label12 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 10 + + + True + + + NoControl + + + 358, 201 + + + 70, 13 + + + 137 + + + PWM 1750 + + + + label11 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 11 + + + True + + + NoControl + + + 358, 174 + + + 94, 13 + + + 136 + + + PWM 1621 - 1749 + + + label10 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 12 + + + True + + + NoControl + + + 358, 147 + + + 94, 13 + + + 135 + + + PWM 1491 - 1620 + + + label9 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 13 + + + True + + + NoControl + + + 358, 120 + + + 94, 13 + + + 134 + + + PWM 1361 - 1490 + + + label8 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 14 + + + True + + + NoControl + + + 358, 93 + + + 94, 13 + + + 133 + + + PWM 1231 - 1360 + + + label7 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 15 + + + True + + + NoControl + + + 20, 201 + + + 71, 13 + + + 131 + + + Flight Mode 6 + + + label6 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 16 + + + 97, 198 + + + 121, 21 + + + 130 + + + CMB_fmode6 + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 17 + + + True + + + NoControl + + + 20, 174 + + + 71, 13 + + + 129 + + + Flight Mode 5 + + + label5 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 18 + + + 97, 171 + + + 121, 21 + + + 128 + + + CMB_fmode5 + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 19 + + + True + + + NoControl + + + 20, 147 + + + 71, 13 + + + 127 + + + Flight Mode 4 + + + label4 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 20 + + + 97, 144 + + + 121, 21 + + + 126 + + + CMB_fmode4 + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 21 + + + True + + + NoControl + + + 20, 120 + + + 71, 13 + + + 125 + + + Flight Mode 3 + + + label3 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 22 + + + 97, 117 + + + 121, 21 + + + 124 + + + CMB_fmode3 + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 23 + + + True + + + NoControl + + + 20, 93 + + + 71, 13 + + + 123 + + + Flight Mode 2 + + + label2 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 24 + + + 97, 90 + + + 121, 21 + + + 122 + + + CMB_fmode2 + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 25 + + + True + + + NoControl + + + 20, 66 + + + 71, 13 + + + 121 + + + Flight Mode 1 + + + label1 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 26 + + + 97, 63 + + + 121, 21 + + + 120 + + + CMB_fmode1 + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 27 + + + NoControl + + + 97, 225 + + + 121, 23 + + + 132 + + + Save Modes + + + BUT_SaveModes + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 28 + + + True + + 6, 13 + + + 500, 270 + + + currentStateBindingSource + + + System.Windows.Forms.BindingSource, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ConfigFlightModes + + + System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-Hans.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-Hans.resx new file mode 100644 index 0000000000..f96892c423 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-Hans.resx @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 遥控输入 + + + 模式 + + + 硬件 + + + 电池 + + + AC2 直升机 + + + 上降副翼 (Elevon) 配置 + + + + 115, 17 + + + Elevons CH2 逆转 + + + 91, 17 + + + Elevons 逆转 + + + 115, 17 + + + Elevons CH1 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 校准遥控 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 64, 13 + + + 当前 PWM: + + + 58, 13 + + + 当前模式: + + + 64, 13 + + + 飞行模式 6 + + + 64, 13 + + + 飞行模式 5 + + + 64, 13 + + + 飞行模式 4 + + + 64, 13 + + + 飞行模式 3 + + + 64, 13 + + + 飞行模式 2 + + + 64, 13 + + + 飞行模式 1 + + + 保存模式 + + + 十进制, 2° 3' W 就是 -2.3 + + + 启用光流 + + + 67, 13 + + + 磁偏角网站 + + + 磁偏角 + + + 启用空速计 + + + 启用声纳 + + + 启用罗盘 + + + 58, 13 + + + 输入电压: + + + 94, 13 + + + 测量的电池电压: + + + 58, 13 + + + 电池电压: + + + 52, 13 + + + 分 压 比: + + + 63, 13 + + + 安培/伏特: + + + 48, 18 + + + 传感器 + + + 电压传感器校准: +1. 测量APM输入电压,输入到下方的文本框中 +2. 测量电池电压,输入到下方的文本框中 +3. 从当前的传感器的数据表中找到安培/伏特,输入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 监控器 + + + 175, 13 + + + 设置水平面的默认加速度计偏移 + + + 261, 13 + + + 注: 图片只是用于展示,设置可以用于六轴等机架 + + + 93, 13 + + + 机架设置 (+ 或 x) + + + 找平 + + + 手动 + + + 手动 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 启用 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 43, 13 + + + 方向舵 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵机 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大侧倾 + + + 55, 13 + + + 舵机行程 + + + 79, 13 + + + 斜盘水平微调 + + + 79, 13 + + + 斜盘舵机位置 + + + 重置 + + + 重置 APM 为默认设置 + + + APM设置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-TW.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-TW.resx new file mode 100644 index 0000000000..0c03fbf8ed --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigFlightModes.zh-TW.resx @@ -0,0 +1,460 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 重置 + + + 遙控輸入 + + + 模式 + + + 硬件 + + + 電池 + + + 重置 APM 為默認設置 + + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 校準遙控 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 64, 13 + + + 當前 PWM: + + + 58, 13 + + + 當前模式: + + + 64, 13 + + + 飛行模式 6 + + + 64, 13 + + + 飛行模式 5 + + + 64, 13 + + + 飛行模式 4 + + + 64, 13 + + + 飛行模式 3 + + + 64, 13 + + + 飛行模式 2 + + + 64, 13 + + + 飛行模式 1 + + + 保存模式 + + + 67, 13 + + + 磁偏角網站 + + + 磁偏角 + + + 啟用空速計 + + + 啟用聲納 + + + 啟用羅盤 + + + 63, 13 + + + 安培/伏特: + + + 52, 13 + + + 分 壓 比: + + + 58, 13 + + + 電池電壓: + + + 94, 13 + + + 測量的電池電壓: + + + 58, 13 + + + 輸入電壓: + + + 電壓傳感器校準: +1. 測量APM輸入電壓,輸入到下方的文本框中 +2. 測量電池電壓,輸入到下方的文本框中 +3. 從當前的傳感器的數據表中找到安培/伏特,輸入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 監控器 + + + 175, 13 + + + 設置水平面的默認加速度計偏移 + + + 261, 13 + + + 注: 圖片只是用於展示,設置可以用於六軸等機架 + + + 93, 13 + + + 機架設置 (+ 或 x) + + + 找平 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 啟用 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 43, 13 + + + 方向舵 + + + 手動 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 手動 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵機 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大側傾 + + + 55, 13 + + + 舵機行程 + + + 79, 13 + + + 斜盤水平微調 + + + 79, 13 + + + 斜盤舵機位置 + + + APM設置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.Designer.cs index 909cb77317..fcd141dac8 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.Designer.cs @@ -28,6 +28,7 @@ /// private void InitializeComponent() { + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigHardwareOptions)); this.BUT_MagCalibration = new ArdupilotMega.MyButton(); this.label27 = new System.Windows.Forms.Label(); this.CMB_sonartype = new System.Windows.Forms.ComboBox(); @@ -50,158 +51,111 @@ // // BUT_MagCalibration // - this.BUT_MagCalibration.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_MagCalibration.Location = new System.Drawing.Point(340, 13); + resources.ApplyResources(this.BUT_MagCalibration, "BUT_MagCalibration"); this.BUT_MagCalibration.Name = "BUT_MagCalibration"; - this.BUT_MagCalibration.Size = new System.Drawing.Size(75, 23); - this.BUT_MagCalibration.TabIndex = 47; - this.BUT_MagCalibration.Text = "Calibration"; this.BUT_MagCalibration.UseVisualStyleBackColor = true; + this.BUT_MagCalibration.Click += new System.EventHandler(this.BUT_MagCalibration_Click); // // label27 // - this.label27.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label27.Location = new System.Drawing.Point(445, 45); + resources.ApplyResources(this.label27, "label27"); this.label27.Name = "label27"; - this.label27.Size = new System.Drawing.Size(150, 20); - this.label27.TabIndex = 46; - this.label27.Text = "in Degrees eg 2° 3\' W is -2.3"; // // CMB_sonartype // this.CMB_sonartype.FormattingEnabled = true; this.CMB_sonartype.Items.AddRange(new object[] { - "XL-EZ0", - "LV-EZ0", - "XL-EZL0"}); - this.CMB_sonartype.Location = new System.Drawing.Point(243, 122); + resources.GetString("CMB_sonartype.Items"), + resources.GetString("CMB_sonartype.Items1"), + resources.GetString("CMB_sonartype.Items2")}); + resources.ApplyResources(this.CMB_sonartype, "CMB_sonartype"); this.CMB_sonartype.Name = "CMB_sonartype"; - this.CMB_sonartype.Size = new System.Drawing.Size(121, 21); - this.CMB_sonartype.TabIndex = 45; + this.CMB_sonartype.SelectedIndexChanged += new System.EventHandler(this.CMB_sonartype_SelectedIndexChanged); // // CHK_enableoptflow // - this.CHK_enableoptflow.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_enableoptflow.Location = new System.Drawing.Point(97, 285); + resources.ApplyResources(this.CHK_enableoptflow, "CHK_enableoptflow"); this.CHK_enableoptflow.Name = "CHK_enableoptflow"; - this.CHK_enableoptflow.Size = new System.Drawing.Size(134, 19); - this.CHK_enableoptflow.TabIndex = 44; - this.CHK_enableoptflow.Text = "Enable Optical Flow"; this.CHK_enableoptflow.UseVisualStyleBackColor = true; + this.CHK_enableoptflow.CheckedChanged += new System.EventHandler(this.CHK_enableoptflow_CheckedChanged); // // pictureBox2 // this.pictureBox2.BackColor = System.Drawing.Color.White; this.pictureBox2.BackgroundImage = global::ArdupilotMega.Properties.Resources.opticalflow; - this.pictureBox2.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + resources.ApplyResources(this.pictureBox2, "pictureBox2"); this.pictureBox2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.pictureBox2.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBox2.Location = new System.Drawing.Point(13, 259); this.pictureBox2.Name = "pictureBox2"; - this.pictureBox2.Size = new System.Drawing.Size(75, 75); - this.pictureBox2.TabIndex = 43; this.pictureBox2.TabStop = false; // // linkLabelmagdec // - this.linkLabelmagdec.AutoSize = true; - this.linkLabelmagdec.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.linkLabelmagdec.Location = new System.Drawing.Point(325, 68); + resources.ApplyResources(this.linkLabelmagdec, "linkLabelmagdec"); this.linkLabelmagdec.Name = "linkLabelmagdec"; - this.linkLabelmagdec.Size = new System.Drawing.Size(104, 13); - this.linkLabelmagdec.TabIndex = 42; this.linkLabelmagdec.TabStop = true; - this.linkLabelmagdec.Text = "Declination WebSite"; + this.linkLabelmagdec.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked); // // label100 // - this.label100.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label100.Location = new System.Drawing.Point(240, 45); + resources.ApplyResources(this.label100, "label100"); this.label100.Name = "label100"; - this.label100.Size = new System.Drawing.Size(72, 16); - this.label100.TabIndex = 38; - this.label100.Text = "Declination"; // // TXT_declination // - this.TXT_declination.Location = new System.Drawing.Point(318, 45); + resources.ApplyResources(this.TXT_declination, "TXT_declination"); this.TXT_declination.Name = "TXT_declination"; - this.TXT_declination.Size = new System.Drawing.Size(121, 20); - this.TXT_declination.TabIndex = 37; + this.TXT_declination.Validated += new System.EventHandler(this.TXT_declination_Validated); // // CHK_enableairspeed // - this.CHK_enableairspeed.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_enableairspeed.Location = new System.Drawing.Point(97, 202); + resources.ApplyResources(this.CHK_enableairspeed, "CHK_enableairspeed"); this.CHK_enableairspeed.Name = "CHK_enableairspeed"; - this.CHK_enableairspeed.Size = new System.Drawing.Size(103, 17); - this.CHK_enableairspeed.TabIndex = 39; - this.CHK_enableairspeed.Text = "Enable Airspeed"; this.CHK_enableairspeed.UseVisualStyleBackColor = true; + this.CHK_enableairspeed.CheckedChanged += new System.EventHandler(this.CHK_enableairspeed_CheckedChanged); // // CHK_enablesonar // - this.CHK_enablesonar.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_enablesonar.Location = new System.Drawing.Point(94, 124); + resources.ApplyResources(this.CHK_enablesonar, "CHK_enablesonar"); this.CHK_enablesonar.Name = "CHK_enablesonar"; - this.CHK_enablesonar.Size = new System.Drawing.Size(90, 17); - this.CHK_enablesonar.TabIndex = 40; - this.CHK_enablesonar.Text = "Enable Sonar"; this.CHK_enablesonar.UseVisualStyleBackColor = true; + this.CHK_enablesonar.CheckedChanged += new System.EventHandler(this.CHK_enablesonar_CheckedChanged); // // CHK_enablecompass // - this.CHK_enablecompass.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_enablecompass.Location = new System.Drawing.Point(97, 44); + resources.ApplyResources(this.CHK_enablecompass, "CHK_enablecompass"); this.CHK_enablecompass.Name = "CHK_enablecompass"; - this.CHK_enablecompass.Size = new System.Drawing.Size(105, 17); - this.CHK_enablecompass.TabIndex = 41; - this.CHK_enablecompass.Text = "Enable Compass"; this.CHK_enablecompass.UseVisualStyleBackColor = true; + this.CHK_enablecompass.CheckedChanged += new System.EventHandler(this.CHK_enablecompass_CheckedChanged); // // pictureBox4 // this.pictureBox4.BackColor = System.Drawing.Color.White; this.pictureBox4.BackgroundImage = global::ArdupilotMega.Properties.Resources.airspeed; - this.pictureBox4.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + resources.ApplyResources(this.pictureBox4, "pictureBox4"); this.pictureBox4.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.pictureBox4.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBox4.Location = new System.Drawing.Point(13, 176); this.pictureBox4.Name = "pictureBox4"; - this.pictureBox4.Size = new System.Drawing.Size(75, 75); - this.pictureBox4.TabIndex = 36; this.pictureBox4.TabStop = false; // // pictureBox3 // this.pictureBox3.BackColor = System.Drawing.Color.White; this.pictureBox3.BackgroundImage = global::ArdupilotMega.Properties.Resources.sonar; - this.pictureBox3.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + resources.ApplyResources(this.pictureBox3, "pictureBox3"); this.pictureBox3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.pictureBox3.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBox3.Location = new System.Drawing.Point(13, 94); this.pictureBox3.Name = "pictureBox3"; - this.pictureBox3.Size = new System.Drawing.Size(75, 75); - this.pictureBox3.TabIndex = 35; this.pictureBox3.TabStop = false; // // pictureBox1 // this.pictureBox1.BackgroundImage = global::ArdupilotMega.Properties.Resources.compass; - this.pictureBox1.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + resources.ApplyResources(this.pictureBox1, "pictureBox1"); this.pictureBox1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle; - this.pictureBox1.ErrorImage = null; - this.pictureBox1.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.pictureBox1.InitialImage = null; - this.pictureBox1.Location = new System.Drawing.Point(13, 13); this.pictureBox1.Name = "pictureBox1"; - this.pictureBox1.Size = new System.Drawing.Size(75, 75); - this.pictureBox1.TabIndex = 34; this.pictureBox1.TabStop = false; // // ConfigHardwareOptions // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.BUT_MagCalibration); this.Controls.Add(this.label27); @@ -218,7 +172,7 @@ this.Controls.Add(this.pictureBox3); this.Controls.Add(this.pictureBox1); this.Name = "ConfigHardwareOptions"; - this.Size = new System.Drawing.Size(602, 351); + this.Load += new System.EventHandler(this.ConfigHardwareOptions_Load); ((System.ComponentModel.ISupportInitialize)(this.pictureBox2)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox3)).EndInit(); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.cs index ed884a1ae8..d54bb4d027 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.cs @@ -6,44 +6,266 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigHardwareOptions : UserControl + public partial class ConfigHardwareOptions : BackStageViewContentPanel { + bool startup = false; + + const float rad2deg = (float)(180 / Math.PI); + const float deg2rad = (float)(1.0 / rad2deg); + public ConfigHardwareOptions() { InitializeComponent(); } - private void CHK_enableoptflow_CheckedChanged(object sender, EventArgs e) + private void BUT_MagCalibration_Click(object sender, EventArgs e) { + if (DialogResult.Yes == CustomMessageBox.Show("Use live data, or a log\n\nYes for Live data", "Mag Calibration", MessageBoxButtons.YesNo)) + { + List> data = new List>(); + byte backupratesens = MainV2.cs.ratesensors; + + MainV2.cs.ratesensors = 10; + + MainV2.comPort.requestDatastream((byte)MAVLink.MAV_DATA_STREAM.MAV_DATA_STREAM_RAW_SENSORS, MainV2.cs.ratesensors); // mag captures at 10 hz + + CustomMessageBox.Show("Data will be collected for 30 seconds, Please click ok and move the apm around all axises"); + + DateTime deadline = DateTime.Now.AddSeconds(30); + + float oldmx = 0; + float oldmy = 0; + float oldmz = 0; + + while (deadline > DateTime.Now) + { + Application.DoEvents(); + + if (oldmx != MainV2.cs.mx && + oldmy != MainV2.cs.my && + oldmz != MainV2.cs.mz) + { + data.Add(new Tuple( + MainV2.cs.mx - (float)MainV2.cs.mag_ofs_x, + MainV2.cs.my - (float)MainV2.cs.mag_ofs_y, + MainV2.cs.mz - (float)MainV2.cs.mag_ofs_z)); + + oldmx = MainV2.cs.mx; + oldmy = MainV2.cs.my; + oldmz = MainV2.cs.mz; + } + } + + MainV2.cs.ratesensors = backupratesens; + + if (data.Count < 10) + { + CustomMessageBox.Show("Log does not contain enough data"); + return; + } + + double[] ans = MagCalib.LeastSq(data); + + MagCalib.SaveOffsets(ans); + + } + else + { + string minthro = "30"; + Common.InputBox("Min Throttle", "Use only data above this throttle percent.", ref minthro); + + int ans = 0; + int.TryParse(minthro, out ans); + + MagCalib.ProcessLog(ans); + } } private void linkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e) { + try + { + //System.Diagnostics.Process.Start("http://www.ngdc.noaa.gov/geomagmodels/Declination.jsp"); + System.Diagnostics.Process.Start("http://www.magnetic-declination.com/"); + } + catch { CustomMessageBox.Show("Webpage open failed... do you have a virus?\nhttp://www.magnetic-declination.com/"); } + } + private void TXT_declination_Validating(object sender, CancelEventArgs e) + { + float ans = 0; + e.Cancel = !float.TryParse(TXT_declination.Text, out ans); } private void TXT_declination_Validated(object sender, EventArgs e) { + if (startup) + return; + try + { + if (MainV2.comPort.param["COMPASS_DEC"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + float dec = 0.0f; + try + { + string declination = TXT_declination.Text; + float.TryParse(declination, out dec); + float deg = (float)((int)dec); + float mins = (dec - deg); + if (dec > 0) + { + dec += ((mins) / 60.0f); + } + else + { + dec -= ((mins) / 60.0f); + } + } + catch { CustomMessageBox.Show("Invalid input!"); return; } + TXT_declination.Text = dec.ToString(); + + MainV2.comPort.setParam("COMPASS_DEC", dec * deg2rad); + } + } + catch { CustomMessageBox.Show("Set COMPASS_DEC Failed"); } } - private void CHK_enableairspeed_CheckedChanged(object sender, EventArgs e) - { + private void CHK_enablecompass_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + try + { + if (MainV2.comPort.param["MAG_ENABLE"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("MAG_ENABLE", ((CheckBox)sender).Checked == true ? 1 : 0); + } + } + catch { CustomMessageBox.Show("Set MAG_ENABLE Failed"); } } private void CHK_enablesonar_CheckedChanged(object sender, EventArgs e) { - + if (startup) + return; + try + { + if (MainV2.comPort.param["SONAR_ENABLE"] == null) + { + CustomMessageBox.Show("Not Available"); + } + else + { + MainV2.comPort.setParam("SONAR_ENABLE", ((CheckBox)sender).Checked == true ? 1 : 0); + } + } + catch { CustomMessageBox.Show("Set SONAR_ENABLE Failed"); } } - private void CHK_enablecompass_CheckedChanged(object sender, EventArgs e) + private void CHK_enableairspeed_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + try + { + if (MainV2.comPort.param["ARSPD_ENABLE"] == null) + { + CustomMessageBox.Show("Not Available on " + MainV2.cs.firmware.ToString()); + } + else + { + MainV2.comPort.setParam("ARSPD_ENABLE", ((CheckBox)sender).Checked == true ? 1 : 0); + } + } + catch { CustomMessageBox.Show("Set ARSPD_ENABLE Failed"); } + } + + private void CHK_enableoptflow_CheckedChanged(object sender, EventArgs e) { + if (startup) + return; + try + { + if (MainV2.comPort.param["FLOW_ENABLE"] == null) + { + CustomMessageBox.Show("Not Available on " + MainV2.cs.firmware.ToString()); + } + else + { + MainV2.comPort.setParam("FLOW_ENABLE", ((CheckBox)sender).Checked == true ? 1 : 0); + } + } + catch { CustomMessageBox.Show("Set FLOW_ENABLE Failed"); } + } + + private void CMB_sonartype_SelectedIndexChanged(object sender, EventArgs e) + { + if (startup) + return; + try + { + if (MainV2.comPort.param["SONAR_TYPE"] == null) + { + CustomMessageBox.Show("Not Available on " + MainV2.cs.firmware.ToString()); + } + else + { + MainV2.comPort.setParam("SONAR_TYPE", ((ComboBox)sender).SelectedIndex); + } + } + catch { CustomMessageBox.Show("Set SONAR_TYPE Failed"); } + } + + private void ConfigHardwareOptions_Load(object sender, EventArgs e) + { + if (!MainV2.comPort.BaseStream.IsOpen) + { + this.Enabled = false; + return; + } + else + { + this.Enabled = true; + } + + startup = true; + + if (MainV2.comPort.param["ARSPD_ENABLE"] != null) + CHK_enableairspeed.Checked = MainV2.comPort.param["ARSPD_ENABLE"].ToString() == "1" ? true : false; + + if (MainV2.comPort.param["SONAR_ENABLE"] != null) + CHK_enablesonar.Checked = MainV2.comPort.param["SONAR_ENABLE"].ToString() == "1" ? true : false; + + if (MainV2.comPort.param["MAG_ENABLE"] != null) + CHK_enablecompass.Checked = MainV2.comPort.param["MAG_ENABLE"].ToString() == "1" ? true : false; + + if (MainV2.comPort.param["COMPASS_DEC"] != null) + TXT_declination.Text = (float.Parse(MainV2.comPort.param["COMPASS_DEC"].ToString()) * rad2deg).ToString(); + + if (MainV2.comPort.param["SONAR_TYPE"] != null) + CMB_sonartype.SelectedIndex = int.Parse(MainV2.comPort.param["SONAR_TYPE"].ToString()); + + if (MainV2.comPort.param["FLOW_ENABLE"] != null) + CHK_enableoptflow.Checked = MainV2.comPort.param["FLOW_ENABLE"].ToString() == "1" ? true : false; + + + startup = false; } } } diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.es-ES.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.es-ES.resx new file mode 100644 index 0000000000..70ad73f1af --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.es-ES.resx @@ -0,0 +1,315 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manual + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo actual: + + + Habilitar el flujo óptico + + + NOTA: Las imágenes son sólo para su presentación + + + Modo Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actual: + + + APMSetup + + + Swash-Servo posición + + + Activar Compas + + + Modo Simple + + + ArduCopter2 + + + Modo Simple + + + Ajuste Chásis (+ or x) + + + 60 + + + 1 + + + Modo Simple + + + Modo Simple + + + 2 + + + Modos + + + Modo Simple + + + 3 + + + Reset + + + -60 + + + Superior + + + Swash de Viaje + + + Manual + + + Timón de Viaje + + + Calibración del sensor de voltaje:Para calibrar el sensor, use un multímetro para medir la tensión que sale de la CES de la batería-la eliminación del circuito (se trata de cables negro y rojo en el cable de tres hilos que suministra energía a la placa APM).Luego reste 0,3 V de ese valor y entrar en él en el campo # 1 a la izquierda. + + + Calibrar Radio + + + Max + + + Modo de Vuelo 2 + + + Alabeo Max + + + Modo de Vuelo 3 + + + Cabeceo Max + + + por ejemplo, en grados 2 ° 3 'W es -2,3 + + + Modo de Vuelo 1 + + + Nivel tu quad para establecer las compensaciones por defecto acel + + + Modo de Vuelo 6 + + + Capacidad + + + Declinación + + + Activar Sonar + + + PWM 1231 - 1360 + + + Entrada Radio + + + Calibración + + + 1500 + + + Modo de Vuelo 4 + + + Modo de Vuelo 5 + + + Gyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sitio Web Declinación + + + 1500 + + + Batería + + + Cero + + + Activar Airspeed + + + 4500 + + + Restablecer los Ajustes de hardware APM + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.fr.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.fr.resx new file mode 100644 index 0000000000..1bd274beea --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.fr.resx @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuel + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Mode Courant: + + + Activ. capteur optique + + + NOTE: images pou presentation uniquement. Fonctionnel pour Hex, Octo etc... + + + Mode Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actuel: + + + APMSetup + + + Swash-Servo position + + + Activ. Boussole + + + Mode Simple + + + ArduCopter2 + + + Mode Simple + + + type de châssis (+ ou x) + + + 60 + + + 1 + + + Mode Simple + + + Mode Simple + + + 2 + + + Modes + + + Mode Simple + + + 3 + + + Réinit. + + + -60 + + + Haut + + + Mouvement Swash + + + Manuel + + + Deplac. du Gouvernail + + + Calibration du capteur de Voltage.1. Mesurer le voltage sur APM et inscrivez-le dans la boite ci-bas.2. Mesurer le voltage de la batterie et inscrivez-le dans la boite ci-bas.3. Inscrire les ampères par volt de la documentation du capteur de courant ci-bas + + + Calibrer Radio + + + Max + + + Mode de vol 2 + + + Roulis Max + + + Mode de vol 2 + + + Tangage Max + + + en degrés eg 2° 3' W est -2.3 + + + Mode de vol 1 + + + Niveler l'apareil pour copensation des accels + + + Mode de vol 6 + + + Capacité + + + Déclination + + + Activer Sonar + + + PWM 1231 - 1360 + + + Entrée Radio + + + 1500 + + + Mode de vol 4 + + + Mode de vol 5 + + + Gyro + + + PWM 1361 - 1490 + + + Matériel + + + PWM 1491 - 1620 + + + Site Web Déclination + + + 1500 + + + Batterie + + + Zéro + + + Activ. Airspeed + + + 4500 + + + RàZ tout parametres du APM + + + 1000 + + + Moniteur + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.it-IT.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.it-IT.resx new file mode 100644 index 0000000000..2b2636c813 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.it-IT.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuale + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo Corrente: + + + Abilita Flusso ottico + + + Nota: le immagini sono sono per presentazione, funzionerà con Hexa, etc. + + + Modo Semplice + + + PWM 1750 + + + + Elevatore CH1 Rev + + + PWM Corrente: + + + Imposta APM + + + Posizione del servo del piatto + + + Abilita Magnetometro + + + Modo Semplice + + + ArduCopter2 + + + Modo Semplice + + + Imposta Frame (+ or x) + + + 60 + + + 1 + + + Modo Semplice + + + Modo Semplice + + + 2 + + + Modi + + + Modo Semplice + + + 3 + + + Riavvia + + + -60 + + + Alto + + + Escursione del piatto + + + Manuale + + + Escursione Timone + + + Calibarzione del sensore di voltaggio: +1. Misura il valtaggio di ingresso di APM e inseriscilo nel box sotto +2. Misura il voltaggio della batteria e inseriscilo nel box sotto +3. Dalle caratteristiche del sensore di corrente, inserisci il valore degli ampere per volt nel box qui sotto + + + Calibrazione Radio + + + Massimo + + + Modo di volo 2 + + + Rollio massimo + + + Modo di volo 3 + + + Passo massimo + + + in gradi es 2° 3' W is -2.3 + + + Modo di volo 1 + + + Livella il quad per impostare gli accelerometri + + + Modo di volo 6 + + + Capacità + + + Declinazione + + + Attiva Sonar + + + PWM 1231 - 1360 + + + Ingresso Radio + + + Calibration + + + 1500 + + + Modo di volo 4 + + + Modo di volo 5 + + + Giroscopio + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sito Web per la Declinazione + + + 1500 + + + Batteria + + + Zero + + + Attiva Sensore Velocità + + + 4500 + + + Resetta APM ai valori di Default + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.pl.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.pl.resx new file mode 100644 index 0000000000..057b932716 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.pl.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Ręczne + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Aktualny tryb: + + + Włącz Optical Flow + + + UWAGA: Obrazy są wyłącznie do prezentacji, działają jedynie z hexa, itp. + + + Tryb prosty + + + PWM 1750 + + + + Odwr. Elevon CH1 + + + Aktualny PWM: + + + Ustawienia APM + + + Pozycja serwa płyty ster. + + + Włącz kompas + + + Tryb prosty + + + ArduCopter2 + + + Tryb prosty + + + Ustawienie ramy (+ lub x) + + + 60 + + + 1 + + + Tryb prosty + + + Tryb prosty + + + 2 + + + Tryby + + + Tryb prosty + + + 3 + + + Reset + + + -60 + + + Góra + + + Zakres ruchu płyty sterującej + + + Ręczne + + + Zakres steru kierunku + + + Kalibracja czujnika napięcia: +1. Zmierz napięcie wejściowe APM i wpisz poniżej +2. Zmierz napięcie baterii i wpisz poniżej +3. Wpisz poniżej ilość amperów/wolt [A/V] z dokumentacji czujnika prądu + + + Kalibracja radia + + + Max + + + Tryb lotu 2 + + + Max przechylenie + + + Tryb lotu 3 + + + Max pochylenie + + + w stopniech np. 2° 3' W to -2.3 + + + Tryb lotu 1 + + + Wypoziomuj quada żeby stawić domyśle offsety przysp. + + + Tryb lotu 6 + + + Pojemność + + + Deklinacja + + + Włącz sonar + + + PWM 1231 - 1360 + + + Wejścia radia + + + Calibration + + + 1500 + + + Tryb lotu 4 + + + Tryb lotu 5 + + + Żyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Strona www deklinacji + + + 1500 + + + Bateria + + + Zero + + + Włącz prędkość powietrza + + + 4500 + + + Reset APM do stawień domyślnych + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.resx index 7080a7d118..587576ac95 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.resx +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.resx @@ -117,4 +117,406 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + NoControl + + + + 340, 13 + + + 75, 23 + + + + 47 + + + Calibration + + + BUT_MagCalibration + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 0 + + + NoControl + + + 445, 45 + + + 150, 20 + + + 46 + + + in Degrees eg 2° 3' W is -2.3 + + + label27 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + XL-EZ0 + + + LV-EZ0 + + + XL-EZL0 + + + 243, 122 + + + 121, 21 + + + 45 + + + CMB_sonartype + + + System.Windows.Forms.ComboBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + NoControl + + + 97, 285 + + + 134, 19 + + + 44 + + + Enable Optical Flow + + + CHK_enableoptflow + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + Zoom + + + NoControl + + + 13, 259 + + + 75, 75 + + + 43 + + + pictureBox2 + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + True + + + NoControl + + + 325, 68 + + + 104, 13 + + + 42 + + + Declination WebSite + + + linkLabelmagdec + + + System.Windows.Forms.LinkLabel, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 5 + + + NoControl + + + 240, 45 + + + 72, 16 + + + 38 + + + Declination + + + label100 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 6 + + + 318, 45 + + + 121, 20 + + + 37 + + + TXT_declination + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 7 + + + NoControl + + + 97, 202 + + + 103, 17 + + + 39 + + + Enable Airspeed + + + CHK_enableairspeed + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 8 + + + NoControl + + + 94, 124 + + + 90, 17 + + + 40 + + + Enable Sonar + + + CHK_enablesonar + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 9 + + + NoControl + + + 97, 44 + + + 105, 17 + + + 41 + + + Enable Compass + + + CHK_enablecompass + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 10 + + + Zoom + + + NoControl + + + 13, 176 + + + 75, 75 + + + 36 + + + pictureBox4 + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 11 + + + Zoom + + + NoControl + + + 13, 94 + + + 75, 75 + + + 35 + + + pictureBox3 + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 12 + + + Zoom + + + + + + NoControl + + + + + + 13, 13 + + + 75, 75 + + + 34 + + + pictureBox1 + + + System.Windows.Forms.PictureBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 13 + + + True + + + 6, 13 + + + 602, 351 + + + ConfigHardwareOptions + + + System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-Hans.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-Hans.resx new file mode 100644 index 0000000000..f96892c423 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-Hans.resx @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 遥控输入 + + + 模式 + + + 硬件 + + + 电池 + + + AC2 直升机 + + + 上降副翼 (Elevon) 配置 + + + + 115, 17 + + + Elevons CH2 逆转 + + + 91, 17 + + + Elevons 逆转 + + + 115, 17 + + + Elevons CH1 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 校准遥控 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 64, 13 + + + 当前 PWM: + + + 58, 13 + + + 当前模式: + + + 64, 13 + + + 飞行模式 6 + + + 64, 13 + + + 飞行模式 5 + + + 64, 13 + + + 飞行模式 4 + + + 64, 13 + + + 飞行模式 3 + + + 64, 13 + + + 飞行模式 2 + + + 64, 13 + + + 飞行模式 1 + + + 保存模式 + + + 十进制, 2° 3' W 就是 -2.3 + + + 启用光流 + + + 67, 13 + + + 磁偏角网站 + + + 磁偏角 + + + 启用空速计 + + + 启用声纳 + + + 启用罗盘 + + + 58, 13 + + + 输入电压: + + + 94, 13 + + + 测量的电池电压: + + + 58, 13 + + + 电池电压: + + + 52, 13 + + + 分 压 比: + + + 63, 13 + + + 安培/伏特: + + + 48, 18 + + + 传感器 + + + 电压传感器校准: +1. 测量APM输入电压,输入到下方的文本框中 +2. 测量电池电压,输入到下方的文本框中 +3. 从当前的传感器的数据表中找到安培/伏特,输入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 监控器 + + + 175, 13 + + + 设置水平面的默认加速度计偏移 + + + 261, 13 + + + 注: 图片只是用于展示,设置可以用于六轴等机架 + + + 93, 13 + + + 机架设置 (+ 或 x) + + + 找平 + + + 手动 + + + 手动 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 启用 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 43, 13 + + + 方向舵 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵机 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大侧倾 + + + 55, 13 + + + 舵机行程 + + + 79, 13 + + + 斜盘水平微调 + + + 79, 13 + + + 斜盘舵机位置 + + + 重置 + + + 重置 APM 为默认设置 + + + APM设置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-TW.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-TW.resx new file mode 100644 index 0000000000..0c03fbf8ed --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigHardwareOptions.zh-TW.resx @@ -0,0 +1,460 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 重置 + + + 遙控輸入 + + + 模式 + + + 硬件 + + + 電池 + + + 重置 APM 為默認設置 + + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 校準遙控 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 64, 13 + + + 當前 PWM: + + + 58, 13 + + + 當前模式: + + + 64, 13 + + + 飛行模式 6 + + + 64, 13 + + + 飛行模式 5 + + + 64, 13 + + + 飛行模式 4 + + + 64, 13 + + + 飛行模式 3 + + + 64, 13 + + + 飛行模式 2 + + + 64, 13 + + + 飛行模式 1 + + + 保存模式 + + + 67, 13 + + + 磁偏角網站 + + + 磁偏角 + + + 啟用空速計 + + + 啟用聲納 + + + 啟用羅盤 + + + 63, 13 + + + 安培/伏特: + + + 52, 13 + + + 分 壓 比: + + + 58, 13 + + + 電池電壓: + + + 94, 13 + + + 測量的電池電壓: + + + 58, 13 + + + 輸入電壓: + + + 電壓傳感器校準: +1. 測量APM輸入電壓,輸入到下方的文本框中 +2. 測量電池電壓,輸入到下方的文本框中 +3. 從當前的傳感器的數據表中找到安培/伏特,輸入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 監控器 + + + 175, 13 + + + 設置水平面的默認加速度計偏移 + + + 261, 13 + + + 注: 圖片只是用於展示,設置可以用於六軸等機架 + + + 93, 13 + + + 機架設置 (+ 或 x) + + + 找平 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 啟用 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 43, 13 + + + 方向舵 + + + 手動 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 手動 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵機 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大側傾 + + + 55, 13 + + + 舵機行程 + + + 79, 13 + + + 斜盤水平微調 + + + 79, 13 + + + 斜盤舵機位置 + + + APM設置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigPlanner.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigPlanner.cs index 5040d85be5..f09ac19d4c 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigPlanner.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigPlanner.cs @@ -9,10 +9,11 @@ using System.Runtime.InteropServices; using System.Text; using System.Windows.Forms; using DirectShowLib; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigPlanner : UserControl + public partial class ConfigPlanner : BackStageViewContentPanel { // AR todo: replicate this functionality private bool startup = false; diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.Designer.cs index 04dca22d3e..f3e54cffe3 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.Designer.cs @@ -29,6 +29,7 @@ private void InitializeComponent() { this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigRadioInput)); this.groupBoxElevons = new System.Windows.Forms.GroupBox(); this.CHK_mixmode = new System.Windows.Forms.CheckBox(); this.CHK_elevonch2rev = new System.Windows.Forms.CheckBox(); @@ -40,6 +41,7 @@ this.CHK_revch1 = new System.Windows.Forms.CheckBox(); this.BUT_Calibrateradio = new ArdupilotMega.MyButton(); this.BAR8 = new ArdupilotMega.HorizontalProgressBar2(); + this.currentStateBindingSource = new System.Windows.Forms.BindingSource(this.components); this.BAR7 = new ArdupilotMega.HorizontalProgressBar2(); this.BAR6 = new ArdupilotMega.HorizontalProgressBar2(); this.BAR5 = new ArdupilotMega.HorizontalProgressBar2(); @@ -47,7 +49,6 @@ this.BARthrottle = new ArdupilotMega.VerticalProgressBar2(); this.BARyaw = new ArdupilotMega.HorizontalProgressBar2(); this.BARroll = new ArdupilotMega.HorizontalProgressBar2(); - this.currentStateBindingSource = new System.Windows.Forms.BindingSource(this.components); this.groupBoxElevons.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.currentStateBindingSource)).BeginInit(); this.SuspendLayout(); @@ -58,117 +59,70 @@ this.groupBoxElevons.Controls.Add(this.CHK_elevonch2rev); this.groupBoxElevons.Controls.Add(this.CHK_elevonrev); this.groupBoxElevons.Controls.Add(this.CHK_elevonch1rev); - this.groupBoxElevons.Location = new System.Drawing.Point(12, 356); + resources.ApplyResources(this.groupBoxElevons, "groupBoxElevons"); this.groupBoxElevons.Name = "groupBoxElevons"; - this.groupBoxElevons.Size = new System.Drawing.Size(409, 42); - this.groupBoxElevons.TabIndex = 125; this.groupBoxElevons.TabStop = false; - this.groupBoxElevons.Text = "Elevon Config"; // // CHK_mixmode // - this.CHK_mixmode.AutoSize = true; - this.CHK_mixmode.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_mixmode.Location = new System.Drawing.Point(13, 19); + resources.ApplyResources(this.CHK_mixmode, "CHK_mixmode"); this.CHK_mixmode.Name = "CHK_mixmode"; - this.CHK_mixmode.Size = new System.Drawing.Size(64, 17); - this.CHK_mixmode.TabIndex = 107; - this.CHK_mixmode.Text = "Elevons"; this.CHK_mixmode.UseVisualStyleBackColor = true; this.CHK_mixmode.CheckedChanged += new System.EventHandler(this.CHK_mixmode_CheckedChanged); // // CHK_elevonch2rev // - this.CHK_elevonch2rev.AutoSize = true; - this.CHK_elevonch2rev.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_elevonch2rev.Location = new System.Drawing.Point(292, 19); + resources.ApplyResources(this.CHK_elevonch2rev, "CHK_elevonch2rev"); this.CHK_elevonch2rev.Name = "CHK_elevonch2rev"; - this.CHK_elevonch2rev.Size = new System.Drawing.Size(111, 17); - this.CHK_elevonch2rev.TabIndex = 110; - this.CHK_elevonch2rev.Text = "Elevons CH2 Rev"; this.CHK_elevonch2rev.UseVisualStyleBackColor = true; this.CHK_elevonch2rev.CheckedChanged += new System.EventHandler(this.CHK_elevonch2rev_CheckedChanged); // // CHK_elevonrev // - this.CHK_elevonrev.AutoSize = true; - this.CHK_elevonrev.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_elevonrev.Location = new System.Drawing.Point(82, 19); + resources.ApplyResources(this.CHK_elevonrev, "CHK_elevonrev"); this.CHK_elevonrev.Name = "CHK_elevonrev"; - this.CHK_elevonrev.Size = new System.Drawing.Size(87, 17); - this.CHK_elevonrev.TabIndex = 108; - this.CHK_elevonrev.Text = "Elevons Rev"; this.CHK_elevonrev.UseVisualStyleBackColor = true; this.CHK_elevonrev.CheckedChanged += new System.EventHandler(this.CHK_elevonrev_CheckedChanged); // // CHK_elevonch1rev // - this.CHK_elevonch1rev.AutoSize = true; - this.CHK_elevonch1rev.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_elevonch1rev.Location = new System.Drawing.Point(175, 19); + resources.ApplyResources(this.CHK_elevonch1rev, "CHK_elevonch1rev"); this.CHK_elevonch1rev.Name = "CHK_elevonch1rev"; - this.CHK_elevonch1rev.Size = new System.Drawing.Size(111, 17); - this.CHK_elevonch1rev.TabIndex = 109; - this.CHK_elevonch1rev.Text = "Elevons CH1 Rev"; this.CHK_elevonch1rev.UseVisualStyleBackColor = true; this.CHK_elevonch1rev.CheckedChanged += new System.EventHandler(this.CHK_elevonch1rev_CheckedChanged); // // CHK_revch3 // - this.CHK_revch3.AutoSize = true; - this.CHK_revch3.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_revch3.Location = new System.Drawing.Point(278, 161); + resources.ApplyResources(this.CHK_revch3, "CHK_revch3"); this.CHK_revch3.Name = "CHK_revch3"; - this.CHK_revch3.Size = new System.Drawing.Size(66, 17); - this.CHK_revch3.TabIndex = 124; - this.CHK_revch3.Text = "Reverse"; this.CHK_revch3.UseVisualStyleBackColor = true; this.CHK_revch3.CheckedChanged += new System.EventHandler(this.CHK_revch3_CheckedChanged); // // CHK_revch4 // - this.CHK_revch4.AutoSize = true; - this.CHK_revch4.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_revch4.Location = new System.Drawing.Point(306, 313); + resources.ApplyResources(this.CHK_revch4, "CHK_revch4"); this.CHK_revch4.Name = "CHK_revch4"; - this.CHK_revch4.Size = new System.Drawing.Size(66, 17); - this.CHK_revch4.TabIndex = 123; - this.CHK_revch4.Text = "Reverse"; this.CHK_revch4.UseVisualStyleBackColor = true; this.CHK_revch4.CheckedChanged += new System.EventHandler(this.CHK_revch4_CheckedChanged); // // CHK_revch2 // - this.CHK_revch2.AutoSize = true; - this.CHK_revch2.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_revch2.Location = new System.Drawing.Point(62, 161); + resources.ApplyResources(this.CHK_revch2, "CHK_revch2"); this.CHK_revch2.Name = "CHK_revch2"; - this.CHK_revch2.Size = new System.Drawing.Size(66, 17); - this.CHK_revch2.TabIndex = 122; - this.CHK_revch2.Text = "Reverse"; this.CHK_revch2.UseVisualStyleBackColor = true; this.CHK_revch2.CheckedChanged += new System.EventHandler(this.CHK_revch2_CheckedChanged); // // CHK_revch1 // - this.CHK_revch1.AutoSize = true; - this.CHK_revch1.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CHK_revch1.Location = new System.Drawing.Point(306, 19); + resources.ApplyResources(this.CHK_revch1, "CHK_revch1"); this.CHK_revch1.Name = "CHK_revch1"; - this.CHK_revch1.Size = new System.Drawing.Size(66, 17); - this.CHK_revch1.TabIndex = 121; - this.CHK_revch1.Text = "Reverse"; this.CHK_revch1.UseVisualStyleBackColor = true; this.CHK_revch1.CheckedChanged += new System.EventHandler(this.CHK_revch1_CheckedChanged); // // BUT_Calibrateradio // - this.BUT_Calibrateradio.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_Calibrateradio.Location = new System.Drawing.Point(473, 347); + resources.ApplyResources(this.BUT_Calibrateradio, "BUT_Calibrateradio"); this.BUT_Calibrateradio.Name = "BUT_Calibrateradio"; - this.BUT_Calibrateradio.Size = new System.Drawing.Size(134, 23); - this.BUT_Calibrateradio.TabIndex = 120; - this.BUT_Calibrateradio.Text = "Calibrate Radio"; this.BUT_Calibrateradio.UseVisualStyleBackColor = true; this.BUT_Calibrateradio.Click += new System.EventHandler(this.BUT_Calibrateradio_Click); // @@ -178,31 +132,31 @@ this.BAR8.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BAR8.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch8in", true)); this.BAR8.Label = "Radio 8"; - this.BAR8.Location = new System.Drawing.Point(437, 247); + resources.ApplyResources(this.BAR8, "BAR8"); this.BAR8.Maximum = 2200; this.BAR8.maxline = 0; this.BAR8.Minimum = 800; this.BAR8.minline = 0; this.BAR8.Name = "BAR8"; - this.BAR8.Size = new System.Drawing.Size(170, 25); - this.BAR8.TabIndex = 119; this.BAR8.Value = 1500; this.BAR8.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // + // currentStateBindingSource + // + this.currentStateBindingSource.DataSource = typeof(ArdupilotMega.CurrentState); + // // BAR7 // this.BAR7.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(20)))), ((int)(((byte)(20)))), ((int)(((byte)(255))))); this.BAR7.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BAR7.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch7in", true)); this.BAR7.Label = "Radio 7"; - this.BAR7.Location = new System.Drawing.Point(437, 192); + resources.ApplyResources(this.BAR7, "BAR7"); this.BAR7.Maximum = 2200; this.BAR7.maxline = 0; this.BAR7.Minimum = 800; this.BAR7.minline = 0; this.BAR7.Name = "BAR7"; - this.BAR7.Size = new System.Drawing.Size(170, 25); - this.BAR7.TabIndex = 118; this.BAR7.Value = 1500; this.BAR7.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // @@ -212,14 +166,12 @@ this.BAR6.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BAR6.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch6in", true)); this.BAR6.Label = "Radio 6"; - this.BAR6.Location = new System.Drawing.Point(437, 137); + resources.ApplyResources(this.BAR6, "BAR6"); this.BAR6.Maximum = 2200; this.BAR6.maxline = 0; this.BAR6.Minimum = 800; this.BAR6.minline = 0; this.BAR6.Name = "BAR6"; - this.BAR6.Size = new System.Drawing.Size(170, 25); - this.BAR6.TabIndex = 117; this.BAR6.Value = 1500; this.BAR6.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // @@ -229,14 +181,12 @@ this.BAR5.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BAR5.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch5in", true)); this.BAR5.Label = "Radio 5"; - this.BAR5.Location = new System.Drawing.Point(437, 82); + resources.ApplyResources(this.BAR5, "BAR5"); this.BAR5.Maximum = 2200; this.BAR5.maxline = 0; this.BAR5.Minimum = 800; this.BAR5.minline = 0; this.BAR5.Name = "BAR5"; - this.BAR5.Size = new System.Drawing.Size(170, 25); - this.BAR5.TabIndex = 116; this.BAR5.Value = 1500; this.BAR5.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // @@ -246,14 +196,12 @@ this.BARpitch.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BARpitch.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch2in", true)); this.BARpitch.Label = "Pitch"; - this.BARpitch.Location = new System.Drawing.Point(134, 64); + resources.ApplyResources(this.BARpitch, "BARpitch"); this.BARpitch.Maximum = 2200; this.BARpitch.maxline = 0; this.BARpitch.Minimum = 800; this.BARpitch.minline = 0; this.BARpitch.Name = "BARpitch"; - this.BARpitch.Size = new System.Drawing.Size(47, 211); - this.BARpitch.TabIndex = 115; this.BARpitch.Value = 1500; this.BARpitch.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // @@ -263,14 +211,12 @@ this.BARthrottle.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BARthrottle.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch3in", true)); this.BARthrottle.Label = "Throttle"; - this.BARthrottle.Location = new System.Drawing.Point(350, 64); + resources.ApplyResources(this.BARthrottle, "BARthrottle"); this.BARthrottle.Maximum = 2200; this.BARthrottle.maxline = 0; this.BARthrottle.Minimum = 800; this.BARthrottle.minline = 0; this.BARthrottle.Name = "BARthrottle"; - this.BARthrottle.Size = new System.Drawing.Size(47, 211); - this.BARthrottle.TabIndex = 114; this.BARthrottle.Value = 1000; this.BARthrottle.ValueColor = System.Drawing.Color.Magenta; // @@ -280,14 +226,12 @@ this.BARyaw.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BARyaw.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch4in", true)); this.BARyaw.Label = "Yaw"; - this.BARyaw.Location = new System.Drawing.Point(12, 307); + resources.ApplyResources(this.BARyaw, "BARyaw"); this.BARyaw.Maximum = 2200; this.BARyaw.maxline = 0; this.BARyaw.Minimum = 800; this.BARyaw.minline = 0; this.BARyaw.Name = "BARyaw"; - this.BARyaw.Size = new System.Drawing.Size(288, 23); - this.BARyaw.TabIndex = 113; this.BARyaw.Value = 1500; this.BARyaw.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // @@ -297,24 +241,18 @@ this.BARroll.BorderColor = System.Drawing.SystemColors.ActiveBorder; this.BARroll.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch1in", true)); this.BARroll.Label = "Roll"; - this.BARroll.Location = new System.Drawing.Point(12, 13); + resources.ApplyResources(this.BARroll, "BARroll"); this.BARroll.Maximum = 2200; this.BARroll.maxline = 0; this.BARroll.Minimum = 800; this.BARroll.minline = 0; this.BARroll.Name = "BARroll"; - this.BARroll.Size = new System.Drawing.Size(288, 23); - this.BARroll.TabIndex = 112; this.BARroll.Value = 1500; this.BARroll.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(0)))), ((int)(((byte)(255))))); // - // currentStateBindingSource - // - this.currentStateBindingSource.DataSource = typeof(ArdupilotMega.CurrentState); - // // ConfigRadioInput // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.Controls.Add(this.groupBoxElevons); this.Controls.Add(this.CHK_revch3); @@ -331,7 +269,6 @@ this.Controls.Add(this.BARyaw); this.Controls.Add(this.BARroll); this.Name = "ConfigRadioInput"; - this.Size = new System.Drawing.Size(628, 406); this.Load += new System.EventHandler(this.ConfigRadioInput_Load); this.groupBoxElevons.ResumeLayout(false); this.groupBoxElevons.PerformLayout(); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.cs index 1be32e8e81..afc3094794 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.cs @@ -6,10 +6,11 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigRadioInput : UserControl + public partial class ConfigRadioInput : BackStageViewContentPanel { bool startup = false; bool run = false; @@ -52,6 +53,16 @@ namespace ArdupilotMega.GCSViews.ConfigurationView private void ConfigRadioInput_Load(object sender, EventArgs e) { + if (!MainV2.comPort.BaseStream.IsOpen) + { + this.Enabled = false; + return; + } + else + { + this.Enabled = true; + } + startup = true; if (MainV2.cs.firmware == MainV2.Firmwares.ArduCopter2) diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.es-ES.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.es-ES.resx new file mode 100644 index 0000000000..70ad73f1af --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.es-ES.resx @@ -0,0 +1,315 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manual + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo actual: + + + Habilitar el flujo óptico + + + NOTA: Las imágenes son sólo para su presentación + + + Modo Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actual: + + + APMSetup + + + Swash-Servo posición + + + Activar Compas + + + Modo Simple + + + ArduCopter2 + + + Modo Simple + + + Ajuste Chásis (+ or x) + + + 60 + + + 1 + + + Modo Simple + + + Modo Simple + + + 2 + + + Modos + + + Modo Simple + + + 3 + + + Reset + + + -60 + + + Superior + + + Swash de Viaje + + + Manual + + + Timón de Viaje + + + Calibración del sensor de voltaje:Para calibrar el sensor, use un multímetro para medir la tensión que sale de la CES de la batería-la eliminación del circuito (se trata de cables negro y rojo en el cable de tres hilos que suministra energía a la placa APM).Luego reste 0,3 V de ese valor y entrar en él en el campo # 1 a la izquierda. + + + Calibrar Radio + + + Max + + + Modo de Vuelo 2 + + + Alabeo Max + + + Modo de Vuelo 3 + + + Cabeceo Max + + + por ejemplo, en grados 2 ° 3 'W es -2,3 + + + Modo de Vuelo 1 + + + Nivel tu quad para establecer las compensaciones por defecto acel + + + Modo de Vuelo 6 + + + Capacidad + + + Declinación + + + Activar Sonar + + + PWM 1231 - 1360 + + + Entrada Radio + + + Calibración + + + 1500 + + + Modo de Vuelo 4 + + + Modo de Vuelo 5 + + + Gyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sitio Web Declinación + + + 1500 + + + Batería + + + Cero + + + Activar Airspeed + + + 4500 + + + Restablecer los Ajustes de hardware APM + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.fr.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.fr.resx new file mode 100644 index 0000000000..1bd274beea --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.fr.resx @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuel + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Mode Courant: + + + Activ. capteur optique + + + NOTE: images pou presentation uniquement. Fonctionnel pour Hex, Octo etc... + + + Mode Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actuel: + + + APMSetup + + + Swash-Servo position + + + Activ. Boussole + + + Mode Simple + + + ArduCopter2 + + + Mode Simple + + + type de châssis (+ ou x) + + + 60 + + + 1 + + + Mode Simple + + + Mode Simple + + + 2 + + + Modes + + + Mode Simple + + + 3 + + + Réinit. + + + -60 + + + Haut + + + Mouvement Swash + + + Manuel + + + Deplac. du Gouvernail + + + Calibration du capteur de Voltage.1. Mesurer le voltage sur APM et inscrivez-le dans la boite ci-bas.2. Mesurer le voltage de la batterie et inscrivez-le dans la boite ci-bas.3. Inscrire les ampères par volt de la documentation du capteur de courant ci-bas + + + Calibrer Radio + + + Max + + + Mode de vol 2 + + + Roulis Max + + + Mode de vol 2 + + + Tangage Max + + + en degrés eg 2° 3' W est -2.3 + + + Mode de vol 1 + + + Niveler l'apareil pour copensation des accels + + + Mode de vol 6 + + + Capacité + + + Déclination + + + Activer Sonar + + + PWM 1231 - 1360 + + + Entrée Radio + + + 1500 + + + Mode de vol 4 + + + Mode de vol 5 + + + Gyro + + + PWM 1361 - 1490 + + + Matériel + + + PWM 1491 - 1620 + + + Site Web Déclination + + + 1500 + + + Batterie + + + Zéro + + + Activ. Airspeed + + + 4500 + + + RàZ tout parametres du APM + + + 1000 + + + Moniteur + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.it-IT.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.it-IT.resx new file mode 100644 index 0000000000..2b2636c813 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.it-IT.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuale + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo Corrente: + + + Abilita Flusso ottico + + + Nota: le immagini sono sono per presentazione, funzionerà con Hexa, etc. + + + Modo Semplice + + + PWM 1750 + + + + Elevatore CH1 Rev + + + PWM Corrente: + + + Imposta APM + + + Posizione del servo del piatto + + + Abilita Magnetometro + + + Modo Semplice + + + ArduCopter2 + + + Modo Semplice + + + Imposta Frame (+ or x) + + + 60 + + + 1 + + + Modo Semplice + + + Modo Semplice + + + 2 + + + Modi + + + Modo Semplice + + + 3 + + + Riavvia + + + -60 + + + Alto + + + Escursione del piatto + + + Manuale + + + Escursione Timone + + + Calibarzione del sensore di voltaggio: +1. Misura il valtaggio di ingresso di APM e inseriscilo nel box sotto +2. Misura il voltaggio della batteria e inseriscilo nel box sotto +3. Dalle caratteristiche del sensore di corrente, inserisci il valore degli ampere per volt nel box qui sotto + + + Calibrazione Radio + + + Massimo + + + Modo di volo 2 + + + Rollio massimo + + + Modo di volo 3 + + + Passo massimo + + + in gradi es 2° 3' W is -2.3 + + + Modo di volo 1 + + + Livella il quad per impostare gli accelerometri + + + Modo di volo 6 + + + Capacità + + + Declinazione + + + Attiva Sonar + + + PWM 1231 - 1360 + + + Ingresso Radio + + + Calibration + + + 1500 + + + Modo di volo 4 + + + Modo di volo 5 + + + Giroscopio + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sito Web per la Declinazione + + + 1500 + + + Batteria + + + Zero + + + Attiva Sensore Velocità + + + 4500 + + + Resetta APM ai valori di Default + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.pl.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.pl.resx new file mode 100644 index 0000000000..057b932716 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.pl.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Ręczne + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Aktualny tryb: + + + Włącz Optical Flow + + + UWAGA: Obrazy są wyłącznie do prezentacji, działają jedynie z hexa, itp. + + + Tryb prosty + + + PWM 1750 + + + + Odwr. Elevon CH1 + + + Aktualny PWM: + + + Ustawienia APM + + + Pozycja serwa płyty ster. + + + Włącz kompas + + + Tryb prosty + + + ArduCopter2 + + + Tryb prosty + + + Ustawienie ramy (+ lub x) + + + 60 + + + 1 + + + Tryb prosty + + + Tryb prosty + + + 2 + + + Tryby + + + Tryb prosty + + + 3 + + + Reset + + + -60 + + + Góra + + + Zakres ruchu płyty sterującej + + + Ręczne + + + Zakres steru kierunku + + + Kalibracja czujnika napięcia: +1. Zmierz napięcie wejściowe APM i wpisz poniżej +2. Zmierz napięcie baterii i wpisz poniżej +3. Wpisz poniżej ilość amperów/wolt [A/V] z dokumentacji czujnika prądu + + + Kalibracja radia + + + Max + + + Tryb lotu 2 + + + Max przechylenie + + + Tryb lotu 3 + + + Max pochylenie + + + w stopniech np. 2° 3' W to -2.3 + + + Tryb lotu 1 + + + Wypoziomuj quada żeby stawić domyśle offsety przysp. + + + Tryb lotu 6 + + + Pojemność + + + Deklinacja + + + Włącz sonar + + + PWM 1231 - 1360 + + + Wejścia radia + + + Calibration + + + 1500 + + + Tryb lotu 4 + + + Tryb lotu 5 + + + Żyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Strona www deklinacji + + + 1500 + + + Bateria + + + Zero + + + Włącz prędkość powietrza + + + 4500 + + + Reset APM do stawień domyślnych + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.resx index 6791def873..f4c0f26f3b 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.resx +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.resx @@ -117,7 +117,490 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + + NoControl + + + + 13, 19 + + + 64, 17 + + + 107 + + + Elevons + + + CHK_mixmode + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBoxElevons + + + 0 + + + True + + + NoControl + + + 292, 19 + + + 111, 17 + + + 110 + + + Elevons CH2 Rev + + + CHK_elevonch2rev + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBoxElevons + + + 1 + + + True + + + NoControl + + + 82, 19 + + + 87, 17 + + + 108 + + + Elevons Rev + + + CHK_elevonrev + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBoxElevons + + + 2 + + + True + + + NoControl + + + 175, 19 + + + 111, 17 + + + 109 + + + Elevons CH1 Rev + + + CHK_elevonch1rev + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBoxElevons + + + 3 + + + 12, 356 + + + 409, 42 + + + 125 + + + Elevon Config + + + groupBoxElevons + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + + + True + + + NoControl + + + 278, 161 + + + 66, 17 + + + 124 + + + Reverse + + + CHK_revch3 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + True + + + NoControl + + + 306, 313 + + + 66, 17 + + + 123 + + + Reverse + + + CHK_revch4 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + True + + + NoControl + + + 62, 161 + + + 66, 17 + + + 122 + + + Reverse + + + CHK_revch2 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + True + + + NoControl + + + 306, 19 + + + 66, 17 + + + 121 + + + Reverse + + + CHK_revch1 + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + NoControl + + + 473, 347 + + + 134, 23 + + + 120 + + + Calibrate Radio + + + BUT_Calibrateradio + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 5 + 17, 17 + + 437, 247 + + + 170, 25 + + + 119 + + + BAR8 + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 6 + + + 437, 192 + + + 170, 25 + + + 118 + + + BAR7 + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 7 + + + 437, 137 + + + 170, 25 + + + 117 + + + BAR6 + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 8 + + + 437, 82 + + + 170, 25 + + + 116 + + + BAR5 + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 9 + + + 134, 64 + + + 47, 211 + + + 115 + + + BARpitch + + + ArdupilotMega.VerticalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 10 + + + 350, 64 + + + 47, 211 + + + 114 + + + BARthrottle + + + ArdupilotMega.VerticalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 11 + + + 12, 307 + + + 288, 23 + + + 113 + + + BARyaw + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 12 + + + 12, 13 + + + 288, 23 + + + 112 + + + BARroll + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 13 + + + True + + + 6, 13 + + + 628, 406 + + + currentStateBindingSource + + + System.Windows.Forms.BindingSource, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ConfigRadioInput + + + System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-Hans.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-Hans.resx new file mode 100644 index 0000000000..f96892c423 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-Hans.resx @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 遥控输入 + + + 模式 + + + 硬件 + + + 电池 + + + AC2 直升机 + + + 上降副翼 (Elevon) 配置 + + + + 115, 17 + + + Elevons CH2 逆转 + + + 91, 17 + + + Elevons 逆转 + + + 115, 17 + + + Elevons CH1 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 校准遥控 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 64, 13 + + + 当前 PWM: + + + 58, 13 + + + 当前模式: + + + 64, 13 + + + 飞行模式 6 + + + 64, 13 + + + 飞行模式 5 + + + 64, 13 + + + 飞行模式 4 + + + 64, 13 + + + 飞行模式 3 + + + 64, 13 + + + 飞行模式 2 + + + 64, 13 + + + 飞行模式 1 + + + 保存模式 + + + 十进制, 2° 3' W 就是 -2.3 + + + 启用光流 + + + 67, 13 + + + 磁偏角网站 + + + 磁偏角 + + + 启用空速计 + + + 启用声纳 + + + 启用罗盘 + + + 58, 13 + + + 输入电压: + + + 94, 13 + + + 测量的电池电压: + + + 58, 13 + + + 电池电压: + + + 52, 13 + + + 分 压 比: + + + 63, 13 + + + 安培/伏特: + + + 48, 18 + + + 传感器 + + + 电压传感器校准: +1. 测量APM输入电压,输入到下方的文本框中 +2. 测量电池电压,输入到下方的文本框中 +3. 从当前的传感器的数据表中找到安培/伏特,输入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 监控器 + + + 175, 13 + + + 设置水平面的默认加速度计偏移 + + + 261, 13 + + + 注: 图片只是用于展示,设置可以用于六轴等机架 + + + 93, 13 + + + 机架设置 (+ 或 x) + + + 找平 + + + 手动 + + + 手动 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 启用 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 43, 13 + + + 方向舵 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵机 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大侧倾 + + + 55, 13 + + + 舵机行程 + + + 79, 13 + + + 斜盘水平微调 + + + 79, 13 + + + 斜盘舵机位置 + + + 重置 + + + 重置 APM 为默认设置 + + + APM设置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-TW.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-TW.resx new file mode 100644 index 0000000000..0c03fbf8ed --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRadioInput.zh-TW.resx @@ -0,0 +1,460 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 重置 + + + 遙控輸入 + + + 模式 + + + 硬件 + + + 電池 + + + 重置 APM 為默認設置 + + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 校準遙控 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 64, 13 + + + 當前 PWM: + + + 58, 13 + + + 當前模式: + + + 64, 13 + + + 飛行模式 6 + + + 64, 13 + + + 飛行模式 5 + + + 64, 13 + + + 飛行模式 4 + + + 64, 13 + + + 飛行模式 3 + + + 64, 13 + + + 飛行模式 2 + + + 64, 13 + + + 飛行模式 1 + + + 保存模式 + + + 67, 13 + + + 磁偏角網站 + + + 磁偏角 + + + 啟用空速計 + + + 啟用聲納 + + + 啟用羅盤 + + + 63, 13 + + + 安培/伏特: + + + 52, 13 + + + 分 壓 比: + + + 58, 13 + + + 電池電壓: + + + 94, 13 + + + 測量的電池電壓: + + + 58, 13 + + + 輸入電壓: + + + 電壓傳感器校準: +1. 測量APM輸入電壓,輸入到下方的文本框中 +2. 測量電池電壓,輸入到下方的文本框中 +3. 從當前的傳感器的數據表中找到安培/伏特,輸入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 監控器 + + + 175, 13 + + + 設置水平面的默認加速度計偏移 + + + 261, 13 + + + 注: 圖片只是用於展示,設置可以用於六軸等機架 + + + 93, 13 + + + 機架設置 (+ 或 x) + + + 找平 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 啟用 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 43, 13 + + + 方向舵 + + + 手動 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 手動 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵機 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大側傾 + + + 55, 13 + + + 舵機行程 + + + 79, 13 + + + 斜盤水平微調 + + + 79, 13 + + + 斜盤舵機位置 + + + APM設置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRawParams.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRawParams.cs index 5b2c7d1d82..bb6cbb9ced 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRawParams.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigRawParams.cs @@ -9,10 +9,11 @@ using System.Linq; using System.Text; using System.Windows.Forms; using log4net; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigRawParams : UserControl + public partial class ConfigRawParams : BackStageViewContentPanel { private static readonly ILog log = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.Designer.cs index fd4b1fcd6c..668c9742fe 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.Designer.cs @@ -28,6 +28,8 @@ /// private void InitializeComponent() { + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(ConfigTradHeli)); this.groupBox5 = new System.Windows.Forms.GroupBox(); this.H1_ENABLE = new System.Windows.Forms.RadioButton(); this.CCPM = new System.Windows.Forms.RadioButton(); @@ -74,8 +76,14 @@ this.HS1_REV = new System.Windows.Forms.CheckBox(); this.label17 = new System.Windows.Forms.Label(); this.HS4 = new ArdupilotMega.HorizontalProgressBar2(); + this.currentStateBindingSource = new System.Windows.Forms.BindingSource(this.components); this.HS3 = new ArdupilotMega.VerticalProgressBar2(); this.Gservoloc = new AGaugeApp.AGauge(); + this.label44 = new System.Windows.Forms.Label(); + this.label43 = new System.Windows.Forms.Label(); + this.label42 = new System.Windows.Forms.Label(); + this.HS4_TRIM = new System.Windows.Forms.NumericUpDown(); + this.HS4_REV = new System.Windows.Forms.CheckBox(); this.groupBox5.SuspendLayout(); this.groupBox3.SuspendLayout(); this.groupBox1.SuspendLayout(); @@ -83,62 +91,44 @@ ((System.ComponentModel.ISupportInitialize)(this.HS3_TRIM)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.HS2_TRIM)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.HS1_TRIM)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.currentStateBindingSource)).BeginInit(); + ((System.ComponentModel.ISupportInitialize)(this.HS4_TRIM)).BeginInit(); this.SuspendLayout(); // // groupBox5 // this.groupBox5.Controls.Add(this.H1_ENABLE); this.groupBox5.Controls.Add(this.CCPM); - this.groupBox5.Location = new System.Drawing.Point(257, 11); + resources.ApplyResources(this.groupBox5, "groupBox5"); this.groupBox5.Name = "groupBox5"; - this.groupBox5.Size = new System.Drawing.Size(120, 43); - this.groupBox5.TabIndex = 169; this.groupBox5.TabStop = false; - this.groupBox5.Text = "Swash Type"; // // H1_ENABLE // - this.H1_ENABLE.AutoSize = true; - this.H1_ENABLE.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.H1_ENABLE.Location = new System.Drawing.Point(67, 19); + resources.ApplyResources(this.H1_ENABLE, "H1_ENABLE"); this.H1_ENABLE.Name = "H1_ENABLE"; - this.H1_ENABLE.Size = new System.Drawing.Size(39, 17); - this.H1_ENABLE.TabIndex = 137; this.H1_ENABLE.TabStop = true; - this.H1_ENABLE.Text = "H1"; this.H1_ENABLE.UseVisualStyleBackColor = true; + this.H1_ENABLE.CheckedChanged += new System.EventHandler(this.H1_ENABLE_CheckedChanged); // // CCPM // - this.CCPM.AutoSize = true; - this.CCPM.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.CCPM.Location = new System.Drawing.Point(6, 19); + resources.ApplyResources(this.CCPM, "CCPM"); this.CCPM.Name = "CCPM"; - this.CCPM.Size = new System.Drawing.Size(55, 17); - this.CCPM.TabIndex = 136; this.CCPM.TabStop = true; - this.CCPM.Text = "CCPM"; this.CCPM.UseVisualStyleBackColor = true; // // BUT_swash_manual // - this.BUT_swash_manual.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_swash_manual.Location = new System.Drawing.Point(302, 83); + resources.ApplyResources(this.BUT_swash_manual, "BUT_swash_manual"); this.BUT_swash_manual.Name = "BUT_swash_manual"; - this.BUT_swash_manual.Size = new System.Drawing.Size(69, 23); - this.BUT_swash_manual.TabIndex = 138; - this.BUT_swash_manual.Text = "Manual"; this.BUT_swash_manual.UseVisualStyleBackColor = true; + this.BUT_swash_manual.Click += new System.EventHandler(this.BUT_swash_manual_Click); // // label41 // - this.label41.AutoSize = true; - this.label41.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label41.Location = new System.Drawing.Point(19, 157); + resources.ApplyResources(this.label41, "label41"); this.label41.Name = "label41"; - this.label41.Size = new System.Drawing.Size(40, 13); - this.label41.TabIndex = 122; - this.label41.Text = "Bottom"; // // groupBox3 // @@ -146,79 +136,49 @@ this.groupBox3.Controls.Add(this.label45); this.groupBox3.Controls.Add(this.GYR_ENABLE); this.groupBox3.Controls.Add(this.GYR_GAIN); - this.groupBox3.Location = new System.Drawing.Point(437, 314); + resources.ApplyResources(this.groupBox3, "groupBox3"); this.groupBox3.Name = "groupBox3"; - this.groupBox3.Size = new System.Drawing.Size(101, 63); - this.groupBox3.TabIndex = 168; this.groupBox3.TabStop = false; - this.groupBox3.Text = "Gyro"; // // label46 // - this.label46.AutoSize = true; - this.label46.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label46.Location = new System.Drawing.Point(6, 38); + resources.ApplyResources(this.label46, "label46"); this.label46.Name = "label46"; - this.label46.Size = new System.Drawing.Size(29, 13); - this.label46.TabIndex = 137; - this.label46.Text = "Gain"; // // label45 // - this.label45.AutoSize = true; - this.label45.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label45.Location = new System.Drawing.Point(6, 19); + resources.ApplyResources(this.label45, "label45"); this.label45.Name = "label45"; - this.label45.Size = new System.Drawing.Size(40, 13); - this.label45.TabIndex = 136; - this.label45.Text = "Enable"; // // GYR_ENABLE // - this.GYR_ENABLE.AutoSize = true; - this.GYR_ENABLE.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.GYR_ENABLE.Location = new System.Drawing.Point(57, 19); + resources.ApplyResources(this.GYR_ENABLE, "GYR_ENABLE"); this.GYR_ENABLE.Name = "GYR_ENABLE"; - this.GYR_ENABLE.Size = new System.Drawing.Size(15, 14); - this.GYR_ENABLE.TabIndex = 118; this.GYR_ENABLE.UseVisualStyleBackColor = true; + this.GYR_ENABLE.CheckedChanged += new System.EventHandler(this.GYR_ENABLE__CheckedChanged); // // GYR_GAIN // - this.GYR_GAIN.Location = new System.Drawing.Point(41, 35); + resources.ApplyResources(this.GYR_GAIN, "GYR_GAIN"); this.GYR_GAIN.Name = "GYR_GAIN"; - this.GYR_GAIN.Size = new System.Drawing.Size(47, 20); - this.GYR_GAIN.TabIndex = 119; - this.GYR_GAIN.Text = "1000"; + this.GYR_GAIN.Validating += new System.ComponentModel.CancelEventHandler(this.GYR_GAIN__Validating); // // BUT_HS4save // - this.BUT_HS4save.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_HS4save.Location = new System.Drawing.Point(483, 174); + resources.ApplyResources(this.BUT_HS4save, "BUT_HS4save"); this.BUT_HS4save.Name = "BUT_HS4save"; - this.BUT_HS4save.Size = new System.Drawing.Size(69, 23); - this.BUT_HS4save.TabIndex = 167; - this.BUT_HS4save.Text = "Manual"; this.BUT_HS4save.UseVisualStyleBackColor = true; + this.BUT_HS4save.Click += new System.EventHandler(this.BUT_HS4save_Click); // // label21 // - this.label21.AutoSize = true; - this.label21.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label21.Location = new System.Drawing.Point(24, 28); + resources.ApplyResources(this.label21, "label21"); this.label21.Name = "label21"; - this.label21.Size = new System.Drawing.Size(26, 13); - this.label21.TabIndex = 120; - this.label21.Text = "Top"; // // COL_MIN // - this.COL_MIN.Enabled = false; - this.COL_MIN.Location = new System.Drawing.Point(18, 173); + resources.ApplyResources(this.COL_MIN, "COL_MIN"); this.COL_MIN.Name = "COL_MIN"; - this.COL_MIN.Size = new System.Drawing.Size(43, 20); - this.COL_MIN.TabIndex = 119; - this.COL_MIN.Text = "1500"; // // groupBox1 // @@ -228,40 +188,30 @@ this.groupBox1.Controls.Add(this.COL_MID); this.groupBox1.Controls.Add(this.COL_MAX); this.groupBox1.Controls.Add(this.BUT_0collective); - this.groupBox1.Location = new System.Drawing.Point(297, 95); + resources.ApplyResources(this.groupBox1, "groupBox1"); this.groupBox1.Name = "groupBox1"; - this.groupBox1.Size = new System.Drawing.Size(80, 209); - this.groupBox1.TabIndex = 165; this.groupBox1.TabStop = false; // // COL_MID // - this.COL_MID.Enabled = false; - this.COL_MID.Location = new System.Drawing.Point(17, 117); + resources.ApplyResources(this.COL_MID, "COL_MID"); this.COL_MID.Name = "COL_MID"; - this.COL_MID.Size = new System.Drawing.Size(44, 20); - this.COL_MID.TabIndex = 117; - this.COL_MID.Text = "1500"; + this.COL_MID.Validating += new System.ComponentModel.CancelEventHandler(this.PWM_Validating); // // COL_MAX // - this.COL_MAX.Enabled = false; - this.COL_MAX.Location = new System.Drawing.Point(18, 45); + resources.ApplyResources(this.COL_MAX, "COL_MAX"); this.COL_MAX.Name = "COL_MAX"; - this.COL_MAX.Size = new System.Drawing.Size(43, 20); - this.COL_MAX.TabIndex = 115; - this.COL_MAX.Text = "1500"; + this.COL_MAX.Enter += new System.EventHandler(this.COL_MAX__Enter); + this.COL_MAX.Leave += new System.EventHandler(this.COL_MAX__Leave); + this.COL_MAX.Validating += new System.ComponentModel.CancelEventHandler(this.PWM_Validating); // // BUT_0collective // - this.BUT_0collective.Enabled = false; - this.BUT_0collective.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.BUT_0collective.Location = new System.Drawing.Point(11, 89); + resources.ApplyResources(this.BUT_0collective, "BUT_0collective"); this.BUT_0collective.Name = "BUT_0collective"; - this.BUT_0collective.Size = new System.Drawing.Size(58, 23); - this.BUT_0collective.TabIndex = 110; - this.BUT_0collective.Text = "Zero"; this.BUT_0collective.UseVisualStyleBackColor = true; + this.BUT_0collective.Click += new System.EventHandler(this.BUT_0collective_Click); // // groupBox2 // @@ -269,53 +219,36 @@ this.groupBox2.Controls.Add(this.HS4_MIN); this.groupBox2.Controls.Add(this.HS4_MAX); this.groupBox2.Controls.Add(this.label40); - this.groupBox2.Location = new System.Drawing.Point(437, 186); + resources.ApplyResources(this.groupBox2, "groupBox2"); this.groupBox2.Name = "groupBox2"; - this.groupBox2.Size = new System.Drawing.Size(169, 78); - this.groupBox2.TabIndex = 166; this.groupBox2.TabStop = false; // // label24 // - this.label24.AutoSize = true; - this.label24.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label24.Location = new System.Drawing.Point(112, 23); + resources.ApplyResources(this.label24, "label24"); this.label24.Name = "label24"; - this.label24.Size = new System.Drawing.Size(27, 13); - this.label24.TabIndex = 135; - this.label24.Text = "Max"; // // HS4_MIN // - this.HS4_MIN.Enabled = false; - this.HS4_MIN.Location = new System.Drawing.Point(21, 40); + resources.ApplyResources(this.HS4_MIN, "HS4_MIN"); this.HS4_MIN.Name = "HS4_MIN"; - this.HS4_MIN.Size = new System.Drawing.Size(43, 20); - this.HS4_MIN.TabIndex = 132; - this.HS4_MIN.Text = "1500"; // // HS4_MAX // - this.HS4_MAX.Enabled = false; - this.HS4_MAX.Location = new System.Drawing.Point(106, 40); + resources.ApplyResources(this.HS4_MAX, "HS4_MAX"); this.HS4_MAX.Name = "HS4_MAX"; - this.HS4_MAX.Size = new System.Drawing.Size(43, 20); - this.HS4_MAX.TabIndex = 133; - this.HS4_MAX.Text = "1500"; + this.HS4_MAX.Enter += new System.EventHandler(this.HS4_MAX_Enter); + this.HS4_MAX.Leave += new System.EventHandler(this.HS4_MAX_Leave); + this.HS4_MAX.Validating += new System.ComponentModel.CancelEventHandler(this.PWM_Validating); // // label40 // - this.label40.AutoSize = true; - this.label40.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label40.Location = new System.Drawing.Point(27, 23); + resources.ApplyResources(this.label40, "label40"); this.label40.Name = "label40"; - this.label40.Size = new System.Drawing.Size(24, 13); - this.label40.TabIndex = 134; - this.label40.Text = "Min"; // // HS3_TRIM // - this.HS3_TRIM.Location = new System.Drawing.Point(126, 314); + resources.ApplyResources(this.HS3_TRIM, "HS3_TRIM"); this.HS3_TRIM.Maximum = new decimal(new int[] { 2000, 0, @@ -327,17 +260,16 @@ 0, 0}); this.HS3_TRIM.Name = "HS3_TRIM"; - this.HS3_TRIM.Size = new System.Drawing.Size(44, 20); - this.HS3_TRIM.TabIndex = 164; this.HS3_TRIM.Value = new decimal(new int[] { 1500, 0, 0, 0}); + this.HS3_TRIM.ValueChanged += new System.EventHandler(this.HS3_TRIM_ValueChanged); // // HS2_TRIM // - this.HS2_TRIM.Location = new System.Drawing.Point(126, 288); + resources.ApplyResources(this.HS2_TRIM, "HS2_TRIM"); this.HS2_TRIM.Maximum = new decimal(new int[] { 2000, 0, @@ -349,17 +281,16 @@ 0, 0}); this.HS2_TRIM.Name = "HS2_TRIM"; - this.HS2_TRIM.Size = new System.Drawing.Size(44, 20); - this.HS2_TRIM.TabIndex = 163; this.HS2_TRIM.Value = new decimal(new int[] { 1500, 0, 0, 0}); + this.HS2_TRIM.ValueChanged += new System.EventHandler(this.HS2_TRIM_ValueChanged); // // HS1_TRIM // - this.HS1_TRIM.Location = new System.Drawing.Point(126, 262); + resources.ApplyResources(this.HS1_TRIM, "HS1_TRIM"); this.HS1_TRIM.Maximum = new decimal(new int[] { 2000, 0, @@ -371,241 +302,165 @@ 0, 0}); this.HS1_TRIM.Name = "HS1_TRIM"; - this.HS1_TRIM.Size = new System.Drawing.Size(44, 20); - this.HS1_TRIM.TabIndex = 162; this.HS1_TRIM.Value = new decimal(new int[] { 1500, 0, 0, 0}); + this.HS1_TRIM.ValueChanged += new System.EventHandler(this.HS1_TRIM_ValueChanged); // // label39 // - this.label39.AutoSize = true; - this.label39.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label39.Location = new System.Drawing.Point(131, 249); + resources.ApplyResources(this.label39, "label39"); this.label39.Name = "label39"; - this.label39.Size = new System.Drawing.Size(27, 13); - this.label39.TabIndex = 161; - this.label39.Text = "Trim"; // // label38 // - this.label38.AutoSize = true; - this.label38.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label38.Location = new System.Drawing.Point(102, 249); + resources.ApplyResources(this.label38, "label38"); this.label38.Name = "label38"; - this.label38.Size = new System.Drawing.Size(27, 13); - this.label38.TabIndex = 160; - this.label38.Text = "Rev"; // // label37 // - this.label37.AutoSize = true; - this.label37.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label37.Location = new System.Drawing.Point(54, 249); + resources.ApplyResources(this.label37, "label37"); this.label37.Name = "label37"; - this.label37.Size = new System.Drawing.Size(44, 13); - this.label37.TabIndex = 159; - this.label37.Text = "Position"; // // label36 // - this.label36.AutoSize = true; - this.label36.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label36.Location = new System.Drawing.Point(17, 249); + resources.ApplyResources(this.label36, "label36"); this.label36.Name = "label36"; - this.label36.Size = new System.Drawing.Size(35, 13); - this.label36.TabIndex = 158; - this.label36.Text = "Servo"; // // label26 // - this.label26.AutoSize = true; - this.label26.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label26.Location = new System.Drawing.Point(260, 365); + resources.ApplyResources(this.label26, "label26"); this.label26.Name = "label26"; - this.label26.Size = new System.Drawing.Size(54, 13); - this.label26.TabIndex = 157; - this.label26.Text = "Pitch Max"; // // PIT_MAX // - this.PIT_MAX.Location = new System.Drawing.Point(314, 362); + resources.ApplyResources(this.PIT_MAX, "PIT_MAX"); this.PIT_MAX.Name = "PIT_MAX"; - this.PIT_MAX.Size = new System.Drawing.Size(47, 20); - this.PIT_MAX.TabIndex = 156; - this.PIT_MAX.Text = "4500"; + this.PIT_MAX.Validating += new System.ComponentModel.CancelEventHandler(this.PIT_MAX__Validating); // // label25 // - this.label25.AutoSize = true; - this.label25.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label25.Location = new System.Drawing.Point(260, 341); + resources.ApplyResources(this.label25, "label25"); this.label25.Name = "label25"; - this.label25.Size = new System.Drawing.Size(48, 13); - this.label25.TabIndex = 155; - this.label25.Text = "Roll Max"; // // ROL_MAX // - this.ROL_MAX.Location = new System.Drawing.Point(314, 336); + resources.ApplyResources(this.ROL_MAX, "ROL_MAX"); this.ROL_MAX.Name = "ROL_MAX"; - this.ROL_MAX.Size = new System.Drawing.Size(47, 20); - this.ROL_MAX.TabIndex = 154; - this.ROL_MAX.Text = "4500"; + this.ROL_MAX.Validating += new System.ComponentModel.CancelEventHandler(this.ROL_MAX__Validating); // // label23 // - this.label23.AutoSize = true; - this.label23.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label23.Location = new System.Drawing.Point(480, 66); + resources.ApplyResources(this.label23, "label23"); this.label23.Name = "label23"; - this.label23.Size = new System.Drawing.Size(75, 13); - this.label23.TabIndex = 153; - this.label23.Text = "Rudder Travel"; // // label22 // - this.label22.AutoSize = true; - this.label22.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label22.Location = new System.Drawing.Point(236, 66); + resources.ApplyResources(this.label22, "label22"); this.label22.Name = "label22"; - this.label22.Size = new System.Drawing.Size(72, 13); - this.label22.TabIndex = 150; - this.label22.Text = "Swash Travel"; // // label20 // - this.label20.AutoSize = true; - this.label20.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label20.Location = new System.Drawing.Point(27, 317); + resources.ApplyResources(this.label20, "label20"); this.label20.Name = "label20"; - this.label20.Size = new System.Drawing.Size(13, 13); - this.label20.TabIndex = 149; - this.label20.Text = "3"; // // label19 // - this.label19.AutoSize = true; - this.label19.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label19.Location = new System.Drawing.Point(27, 291); + resources.ApplyResources(this.label19, "label19"); this.label19.Name = "label19"; - this.label19.Size = new System.Drawing.Size(13, 13); - this.label19.TabIndex = 148; - this.label19.Text = "2"; // // label18 // - this.label18.AutoSize = true; - this.label18.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label18.Location = new System.Drawing.Point(27, 265); + resources.ApplyResources(this.label18, "label18"); this.label18.Name = "label18"; - this.label18.Size = new System.Drawing.Size(13, 13); - this.label18.TabIndex = 147; - this.label18.Text = "1"; // // SV3_POS // - this.SV3_POS.Location = new System.Drawing.Point(57, 314); + resources.ApplyResources(this.SV3_POS, "SV3_POS"); this.SV3_POS.Name = "SV3_POS"; - this.SV3_POS.Size = new System.Drawing.Size(39, 20); - this.SV3_POS.TabIndex = 146; - this.SV3_POS.Text = "180"; + this.SV3_POS.Validating += new System.ComponentModel.CancelEventHandler(this.TXT_srvpos3_Validating); // // SV2_POS // - this.SV2_POS.Location = new System.Drawing.Point(57, 288); + resources.ApplyResources(this.SV2_POS, "SV2_POS"); this.SV2_POS.Name = "SV2_POS"; - this.SV2_POS.Size = new System.Drawing.Size(39, 20); - this.SV2_POS.TabIndex = 145; - this.SV2_POS.Text = "60"; + this.SV2_POS.Validating += new System.ComponentModel.CancelEventHandler(this.TXT_srvpos2_Validating); // // SV1_POS // - this.SV1_POS.Location = new System.Drawing.Point(57, 262); + resources.ApplyResources(this.SV1_POS, "SV1_POS"); this.SV1_POS.Name = "SV1_POS"; - this.SV1_POS.Size = new System.Drawing.Size(39, 20); - this.SV1_POS.TabIndex = 144; - this.SV1_POS.Text = "-60"; + this.SV1_POS.Validating += new System.ComponentModel.CancelEventHandler(this.TXT_srvpos1_Validating); // // HS3_REV // - this.HS3_REV.AutoSize = true; - this.HS3_REV.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.HS3_REV.Location = new System.Drawing.Point(105, 317); + resources.ApplyResources(this.HS3_REV, "HS3_REV"); this.HS3_REV.Name = "HS3_REV"; - this.HS3_REV.Size = new System.Drawing.Size(15, 14); - this.HS3_REV.TabIndex = 143; this.HS3_REV.UseVisualStyleBackColor = true; + this.HS3_REV.CheckedChanged += new System.EventHandler(this.HS3_REV_CheckedChanged); // // HS2_REV // - this.HS2_REV.AutoSize = true; - this.HS2_REV.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.HS2_REV.Location = new System.Drawing.Point(105, 291); + resources.ApplyResources(this.HS2_REV, "HS2_REV"); this.HS2_REV.Name = "HS2_REV"; - this.HS2_REV.Size = new System.Drawing.Size(15, 14); - this.HS2_REV.TabIndex = 142; this.HS2_REV.UseVisualStyleBackColor = true; + this.HS2_REV.CheckedChanged += new System.EventHandler(this.HS2_REV_CheckedChanged); // // HS1_REV // - this.HS1_REV.AutoSize = true; - this.HS1_REV.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.HS1_REV.Location = new System.Drawing.Point(105, 268); + resources.ApplyResources(this.HS1_REV, "HS1_REV"); this.HS1_REV.Name = "HS1_REV"; - this.HS1_REV.Size = new System.Drawing.Size(15, 14); - this.HS1_REV.TabIndex = 141; this.HS1_REV.UseVisualStyleBackColor = true; + this.HS1_REV.CheckedChanged += new System.EventHandler(this.HS1_REV_CheckedChanged); // // label17 // - this.label17.AutoSize = true; - this.label17.ImeMode = System.Windows.Forms.ImeMode.NoControl; - this.label17.Location = new System.Drawing.Point(42, 66); + resources.ApplyResources(this.label17, "label17"); this.label17.Name = "label17"; - this.label17.Size = new System.Drawing.Size(109, 13); - this.label17.TabIndex = 140; - this.label17.Text = "Swash-Servo position"; // // HS4 // this.HS4.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(68)))), ((int)(((byte)(69))))); this.HS4.BorderColor = System.Drawing.SystemColors.ActiveBorder; + this.HS4.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch4in", true)); this.HS4.Label = "Rudder"; - this.HS4.Location = new System.Drawing.Point(396, 93); + resources.ApplyResources(this.HS4, "HS4"); this.HS4.Maximum = 2200; this.HS4.maxline = 0; this.HS4.Minimum = 800; this.HS4.minline = 0; this.HS4.Name = "HS4"; - this.HS4.Size = new System.Drawing.Size(242, 42); - this.HS4.TabIndex = 152; this.HS4.Value = 1500; this.HS4.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(148)))), ((int)(((byte)(193)))), ((int)(((byte)(31))))); + this.HS4.Paint += new System.Windows.Forms.PaintEventHandler(this.HS4_Paint); + // + // currentStateBindingSource + // + this.currentStateBindingSource.DataSource = typeof(ArdupilotMega.CurrentState); // // HS3 // this.HS3.BackgroundColor = System.Drawing.Color.FromArgb(((int)(((byte)(67)))), ((int)(((byte)(68)))), ((int)(((byte)(69))))); this.HS3.BorderColor = System.Drawing.SystemColors.ActiveBorder; + this.HS3.DataBindings.Add(new System.Windows.Forms.Binding("Value", this.currentStateBindingSource, "ch3in", true)); this.HS3.Label = "Collective"; - this.HS3.Location = new System.Drawing.Point(239, 95); + resources.ApplyResources(this.HS3, "HS3"); this.HS3.Maximum = 2200; this.HS3.maxline = 0; this.HS3.Minimum = 800; this.HS3.minline = 0; this.HS3.Name = "HS3"; - this.HS3.Size = new System.Drawing.Size(42, 213); - this.HS3.TabIndex = 151; this.HS3.Value = 1500; this.HS3.ValueColor = System.Drawing.Color.FromArgb(((int)(((byte)(148)))), ((int)(((byte)(193)))), ((int)(((byte)(31))))); + this.HS3.Paint += new System.Windows.Forms.PaintEventHandler(this.HS3_Paint); // // Gservoloc // this.Gservoloc.BackColor = System.Drawing.Color.Transparent; this.Gservoloc.BackgroundImage = global::ArdupilotMega.Properties.Resources.Gaugebg; - this.Gservoloc.BackgroundImageLayout = System.Windows.Forms.ImageLayout.Zoom; + resources.ApplyResources(this.Gservoloc, "Gservoloc"); this.Gservoloc.BaseArcColor = System.Drawing.Color.Transparent; this.Gservoloc.BaseArcRadius = 60; this.Gservoloc.BaseArcStart = 90; @@ -635,9 +490,6 @@ ""}; this.Gservoloc.CapText = "Position"; this.Gservoloc.Center = new System.Drawing.Point(75, 75); - this.Gservoloc.Font = new System.Drawing.Font("Microsoft Sans Serif", 9F); - this.Gservoloc.Location = new System.Drawing.Point(20, 93); - this.Gservoloc.Margin = new System.Windows.Forms.Padding(0); this.Gservoloc.MaxValue = 180F; this.Gservoloc.MinValue = -180F; this.Gservoloc.Name = "Gservoloc"; @@ -741,18 +593,64 @@ this.Gservoloc.ScaleNumbersRotation = 45; this.Gservoloc.ScaleNumbersStartScaleLine = 2; this.Gservoloc.ScaleNumbersStepScaleLines = 1; - this.Gservoloc.Size = new System.Drawing.Size(150, 150); - this.Gservoloc.TabIndex = 139; this.Gservoloc.Value = 0F; this.Gservoloc.Value0 = -60F; this.Gservoloc.Value1 = 60F; this.Gservoloc.Value2 = 180F; this.Gservoloc.Value3 = 0F; // + // label44 + // + resources.ApplyResources(this.label44, "label44"); + this.label44.Name = "label44"; + // + // label43 + // + resources.ApplyResources(this.label43, "label43"); + this.label43.Name = "label43"; + // + // label42 + // + resources.ApplyResources(this.label42, "label42"); + this.label42.Name = "label42"; + // + // HS4_TRIM + // + resources.ApplyResources(this.HS4_TRIM, "HS4_TRIM"); + this.HS4_TRIM.Maximum = new decimal(new int[] { + 2000, + 0, + 0, + 0}); + this.HS4_TRIM.Minimum = new decimal(new int[] { + 1000, + 0, + 0, + 0}); + this.HS4_TRIM.Name = "HS4_TRIM"; + this.HS4_TRIM.Value = new decimal(new int[] { + 1500, + 0, + 0, + 0}); + this.HS4_TRIM.ValueChanged += new System.EventHandler(this.HS4_TRIM_ValueChanged); + // + // HS4_REV + // + resources.ApplyResources(this.HS4_REV, "HS4_REV"); + this.HS4_REV.Name = "HS4_REV"; + this.HS4_REV.UseVisualStyleBackColor = true; + this.HS4_REV.CheckedChanged += new System.EventHandler(this.HS4_REV_CheckedChanged); + // // ConfigTradHeli // - this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); + resources.ApplyResources(this, "$this"); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; + this.Controls.Add(this.label44); + this.Controls.Add(this.label43); + this.Controls.Add(this.label42); + this.Controls.Add(this.HS4_TRIM); + this.Controls.Add(this.HS4_REV); this.Controls.Add(this.groupBox5); this.Controls.Add(this.BUT_swash_manual); this.Controls.Add(this.groupBox3); @@ -786,7 +684,7 @@ this.Controls.Add(this.HS3); this.Controls.Add(this.Gservoloc); this.Name = "ConfigTradHeli"; - this.Size = new System.Drawing.Size(654, 397); + this.Load += new System.EventHandler(this.ConfigTradHeli_Load); this.groupBox5.ResumeLayout(false); this.groupBox5.PerformLayout(); this.groupBox3.ResumeLayout(false); @@ -798,6 +696,8 @@ ((System.ComponentModel.ISupportInitialize)(this.HS3_TRIM)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.HS2_TRIM)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.HS1_TRIM)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.currentStateBindingSource)).EndInit(); + ((System.ComponentModel.ISupportInitialize)(this.HS4_TRIM)).EndInit(); this.ResumeLayout(false); this.PerformLayout(); @@ -853,5 +753,11 @@ private HorizontalProgressBar2 HS4; private VerticalProgressBar2 HS3; private AGaugeApp.AGauge Gservoloc; + private System.Windows.Forms.BindingSource currentStateBindingSource; + private System.Windows.Forms.Label label44; + private System.Windows.Forms.Label label43; + private System.Windows.Forms.Label label42; + private System.Windows.Forms.NumericUpDown HS4_TRIM; + private System.Windows.Forms.CheckBox HS4_REV; } } diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.cs index 7c90f1b31f..59522dfaf5 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.cs @@ -6,16 +6,484 @@ using System.Data; using System.Linq; using System.Text; using System.Windows.Forms; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega.GCSViews.ConfigurationView { - public partial class ConfigTradHeli : UserControl + public partial class ConfigTradHeli : BackStageViewContentPanel { + bool startup = false; + bool inpwmdetect = false; + + Timer timer = new Timer(); + public ConfigTradHeli() { InitializeComponent(); } + private void H1_ENABLE_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + try + { + if (MainV2.comPort.param["H1_ENABLE"] == null) + { + CustomMessageBox.Show("Not Available on " + MainV2.cs.firmware.ToString()); + } + else + { + MainV2.comPort.setParam("H1_ENABLE", ((RadioButton)sender).Checked == true ? 1 : 0); + } + } + catch { CustomMessageBox.Show("Set H1_ENABLE Failed"); } + } + private void BUT_swash_manual_Click(object sender, EventArgs e) + { + try + { + if (MainV2.comPort.param["HSV_MAN"].ToString() == "1") + { + MainV2.comPort.setParam("COL_MIN", int.Parse(COL_MIN.Text)); + MainV2.comPort.setParam("COL_MAX", int.Parse(COL_MAX.Text)); + MainV2.comPort.setParam("HSV_MAN", 0); // randy request - last + BUT_swash_manual.Text = "Manual"; + + COL_MAX.Enabled = false; + COL_MID.Enabled = false; + COL_MIN.Enabled = false; + BUT_0collective.Enabled = false; + } + else + { + COL_MAX.Text = "1500"; + COL_MIN.Text = "1500"; + MainV2.comPort.setParam("HSV_MAN", 1); // randy request + BUT_swash_manual.Text = "Save"; + + COL_MAX.Enabled = true; + COL_MID.Enabled = true; + COL_MIN.Enabled = true; + BUT_0collective.Enabled = true; + } + } + catch { CustomMessageBox.Show("Failed to set HSV_MAN"); } + } + + private void BUT_HS4save_Click(object sender, EventArgs e) + { + try + { + if (MainV2.comPort.param["HSV_MAN"].ToString() == "1") + { + MainV2.comPort.setParam("HS4_MIN", int.Parse(HS4_MIN.Text)); + MainV2.comPort.setParam("HS4_MAX", int.Parse(HS4_MAX.Text)); + MainV2.comPort.setParam("HSV_MAN", 0); // randy request - last + BUT_HS4save.Text = "Manual"; + + HS4_MAX.Enabled = false; + HS4_MIN.Enabled = false; + } + else + { + HS4_MIN.Text = "1500"; + HS4_MAX.Text = "1500"; + MainV2.comPort.setParam("HSV_MAN", 1); // randy request + BUT_HS4save.Text = "Save"; + + + HS4_MAX.Enabled = true; + HS4_MIN.Enabled = true; + } + } + catch { CustomMessageBox.Show("Failed to set HSV_MAN"); } + } + + private void tabHeli_Click(object sender, EventArgs e) + { + + } + + private void HS4_Paint(object sender, PaintEventArgs e) + { + try + { + if (int.Parse(HS4_MIN.Text) > HS4.minline) + HS4_MIN.Text = HS4.minline.ToString(); + if (int.Parse(HS4_MAX.Text) < HS4.maxline) + HS4_MAX.Text = HS4.maxline.ToString(); + } + catch { } + } + + private void HS3_Paint(object sender, PaintEventArgs e) + { + try + { + if (int.Parse(COL_MIN.Text) > HS3.minline) + COL_MIN.Text = HS3.minline.ToString(); + if (int.Parse(COL_MAX.Text) < HS3.maxline) + COL_MAX.Text = HS3.maxline.ToString(); + } + catch { } + } + + private void COL_MAX__Enter(object sender, EventArgs e) + { + inpwmdetect = true; + } + + private void COL_MIN__Enter(object sender, EventArgs e) + { + inpwmdetect = true; + } + + private void COL_MAX__Leave(object sender, EventArgs e) + { + inpwmdetect = false; + } + + private void COL_MIN__Leave(object sender, EventArgs e) + { + inpwmdetect = false; + } + + private void HS4_MIN_Enter(object sender, EventArgs e) + { + inpwmdetect = true; + } + + private void HS4_MIN_Leave(object sender, EventArgs e) + { + inpwmdetect = false; + } + + private void HS4_MAX_Enter(object sender, EventArgs e) + { + inpwmdetect = true; + } + + private void HS4_MAX_Leave(object sender, EventArgs e) + { + inpwmdetect = false; + } + + private void PWM_Validating(object sender, CancelEventArgs e) + { + Control temp = (Control)(sender); + + if (int.Parse(temp.Text) < 900) + temp.Text = "900"; + if (int.Parse(temp.Text) > 2100) + temp.Text = "2100"; + } + + private void TXT_srvpos1_Validating(object sender, CancelEventArgs e) + { + if (startup || this.Disposing) + return; + int test = 0; + if (!int.TryParse(((TextBox)sender).Text, out test)) + { + e.Cancel = true; + } + + Gservoloc.Value0 = test; + + try + { + MainV2.comPort.setParam("HSV_MAN", 1); // randy request + MainV2.comPort.setParam(((TextBox)sender).Name, test); + System.Threading.Thread.Sleep(100); + MainV2.comPort.setParam("HSV_MAN", 0); // randy request - last + + } + catch { CustomMessageBox.Show("Set " + ((TextBox)sender).Name + " failed"); } + } + + private void TXT_srvpos2_Validating(object sender, CancelEventArgs e) + { + if (startup || this.Disposing) + return; + int test = 0; + if (!int.TryParse(((TextBox)sender).Text, out test)) + { + e.Cancel = true; + } + + Gservoloc.Value1 = test; + + try + { + MainV2.comPort.setParam("HSV_MAN", 1); // randy request + MainV2.comPort.setParam(((TextBox)sender).Name, test); + System.Threading.Thread.Sleep(100); + MainV2.comPort.setParam("HSV_MAN", 0); // randy request - last + } + catch { CustomMessageBox.Show("Set " + ((TextBox)sender).Name + " failed"); } + } + + private void TXT_srvpos3_Validating(object sender, CancelEventArgs e) + { + if (startup || this.Disposing) + return; + int test = 0; + if (!int.TryParse(((TextBox)sender).Text, out test)) + { + e.Cancel = true; + } + + Gservoloc.Value2 = test; + + try + { + MainV2.comPort.setParam("HSV_MAN", 1); // randy request + MainV2.comPort.setParam(((TextBox)sender).Name, test); + System.Threading.Thread.Sleep(100); + MainV2.comPort.setParam("HSV_MAN", 0); // randy request - last + } + catch { CustomMessageBox.Show("Set " + ((TextBox)sender).Name + " failed"); } + } + + private void BUT_0collective_Click(object sender, EventArgs e) + { + CustomMessageBox.Show("Make sure your blades are at 0 degrees"); + + try + { + + MainV2.comPort.setParam("COL_MID", MainV2.cs.ch3in); + + COL_MID.Text = MainV2.comPort.param["COL_MID"].ToString(); + } + catch { CustomMessageBox.Show("Set COL_MID_ failed"); } + } + + private void HS1_REV_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((CheckBox)sender).Name, ((CheckBox)sender).Checked == false ? 1.0f : -1.0f); + } + + private void HS2_REV_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((CheckBox)sender).Name, ((CheckBox)sender).Checked == false ? 1.0f : -1.0f); + } + + private void HS3_REV_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((CheckBox)sender).Name, ((CheckBox)sender).Checked == false ? 1.0f : -1.0f); + } + + private void HS4_REV_CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((CheckBox)sender).Name, ((CheckBox)sender).Checked == false ? 1.0f : -1.0f); + } + + private void HS1_TRIM_ValueChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((NumericUpDown)sender).Name, (float)((NumericUpDown)sender).Value); + } + + private void HS2_TRIM_ValueChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((NumericUpDown)sender).Name, (float)((NumericUpDown)sender).Value); + } + + private void HS3_TRIM_ValueChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((NumericUpDown)sender).Name, (float)((NumericUpDown)sender).Value); + } + + private void HS4_TRIM_ValueChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((NumericUpDown)sender).Name, (float)((NumericUpDown)sender).Value); + } + + private void ROL_MAX__Validating(object sender, CancelEventArgs e) + { + if (startup || this.Disposing) + return; + int test = 0; + if (!int.TryParse(((TextBox)sender).Text, out test)) + { + e.Cancel = true; + } + + MainV2.comPort.setParam(((TextBox)sender).Name, test); + } + + private void PIT_MAX__Validating(object sender, CancelEventArgs e) + { + if (startup || this.Disposing) + return; + int test = 0; + if (!int.TryParse(((TextBox)sender).Text, out test)) + { + e.Cancel = true; + } + + MainV2.comPort.setParam(((TextBox)sender).Name, test); + } + + private void GYR_GAIN__Validating(object sender, CancelEventArgs e) + { + if (startup || this.Disposing || ((TextBox)sender).Enabled == false) + return; + int test = 0; + if (!int.TryParse(((TextBox)sender).Text, out test)) + { + e.Cancel = true; + } + + try + { + MainV2.comPort.setParam(((TextBox)sender).Name, test); + } + catch { CustomMessageBox.Show("Failed to set Gyro Gain"); } + } + + private void GYR_ENABLE__CheckedChanged(object sender, EventArgs e) + { + if (startup) + return; + MainV2.comPort.setParam(((CheckBox)sender).Name, ((CheckBox)sender).Checked == true ? 1.0f : 0.0f); + } + + private void ConfigTradHeli_Load(object sender, EventArgs e) + { + if (!MainV2.comPort.BaseStream.IsOpen) + { + this.Enabled = false; + return; + } + else + { + this.Enabled = true; + } + + if (MainV2.comPort.param["GYR_ENABLE"] == null) + { + this.Enabled = false; + return; + } + + timer.Tick += new EventHandler(timer_Tick); + + timer.Enabled = true; + timer.Interval = 100; + timer.Start(); + + startup = true; + try + { + if (MainV2.comPort.param.ContainsKey("H1_ENABLE")) + { + CCPM.Checked = MainV2.comPort.param["H1_ENABLE"].ToString() == "0" ? true : false; + H1_ENABLE.Checked = !CCPM.Checked; + } + + foreach (string value in MainV2.comPort.param.Keys) + { + if (value == "") + continue; + + Control[] control = this.Controls.Find(value, true); + if (control.Length > 0) + { + if (control[0].GetType() == typeof(TextBox)) + { + TextBox temp = (TextBox)control[0]; + string option = MainV2.comPort.param[value].ToString(); + temp.Text = option; + } + if (control[0].GetType() == typeof(NumericUpDown)) + { + NumericUpDown temp = (NumericUpDown)control[0]; + string option = MainV2.comPort.param[value].ToString(); + temp.Text = option; + } + if (control[0].GetType() == typeof(CheckBox)) + { + CheckBox temp = (CheckBox)control[0]; + string option = MainV2.comPort.param[value].ToString(); + temp.Checked = option == "1" ? true : false; + } + if (control[0].GetType() == typeof(MyTrackBar)) + { + MyTrackBar temp = (MyTrackBar)control[0]; + string option = MainV2.comPort.param[value].ToString(); + temp.Value = int.Parse(option); + } + } + } + + HS1_REV.Checked = MainV2.comPort.param["HS1_REV"].ToString() == "-1"; + HS2_REV.Checked = MainV2.comPort.param["HS2_REV"].ToString() == "-1"; + HS3_REV.Checked = MainV2.comPort.param["HS3_REV"].ToString() == "-1"; + HS4_REV.Checked = MainV2.comPort.param["HS4_REV"].ToString() == "-1"; + + } + catch { } + startup = false; + } + + void timer_Tick(object sender, EventArgs e) + { + try + { + MainV2.cs.UpdateCurrentSettings(currentStateBindingSource); + } + catch { } + + if (MainV2.comPort.param["HSV_MAN"] == null || MainV2.comPort.param["HSV_MAN"].ToString() == "0") + return; + + if (HS3.minline == 0) + HS3.minline = 2200; + + if (HS4.minline == 0) + HS4.minline = 2200; + + HS3.minline = Math.Min(HS3.minline, (int)MainV2.cs.ch3in); + HS3.maxline = Math.Max(HS3.maxline, (int)MainV2.cs.ch3in); + + HS4.minline = Math.Min(HS4.minline, (int)MainV2.cs.ch4in); + HS4.maxline = Math.Max(HS4.maxline, (int)MainV2.cs.ch4in); + + if (!inpwmdetect) + { + HS3_Paint(null, null); + HS4_Paint(null, null); + } + else + { + try + { + HS3.minline = int.Parse(COL_MIN.Text); + HS3.maxline = int.Parse(COL_MAX.Text); + HS4.maxline = int.Parse(HS4_MIN.Text); + HS4.minline = int.Parse(HS4_MAX.Text); + } + catch { } + } + } } } diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.es-ES.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.es-ES.resx new file mode 100644 index 0000000000..70ad73f1af --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.es-ES.resx @@ -0,0 +1,315 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manual + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo actual: + + + Habilitar el flujo óptico + + + NOTA: Las imágenes son sólo para su presentación + + + Modo Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actual: + + + APMSetup + + + Swash-Servo posición + + + Activar Compas + + + Modo Simple + + + ArduCopter2 + + + Modo Simple + + + Ajuste Chásis (+ or x) + + + 60 + + + 1 + + + Modo Simple + + + Modo Simple + + + 2 + + + Modos + + + Modo Simple + + + 3 + + + Reset + + + -60 + + + Superior + + + Swash de Viaje + + + Manual + + + Timón de Viaje + + + Calibración del sensor de voltaje:Para calibrar el sensor, use un multímetro para medir la tensión que sale de la CES de la batería-la eliminación del circuito (se trata de cables negro y rojo en el cable de tres hilos que suministra energía a la placa APM).Luego reste 0,3 V de ese valor y entrar en él en el campo # 1 a la izquierda. + + + Calibrar Radio + + + Max + + + Modo de Vuelo 2 + + + Alabeo Max + + + Modo de Vuelo 3 + + + Cabeceo Max + + + por ejemplo, en grados 2 ° 3 'W es -2,3 + + + Modo de Vuelo 1 + + + Nivel tu quad para establecer las compensaciones por defecto acel + + + Modo de Vuelo 6 + + + Capacidad + + + Declinación + + + Activar Sonar + + + PWM 1231 - 1360 + + + Entrada Radio + + + Calibración + + + 1500 + + + Modo de Vuelo 4 + + + Modo de Vuelo 5 + + + Gyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sitio Web Declinación + + + 1500 + + + Batería + + + Cero + + + Activar Airspeed + + + 4500 + + + Restablecer los Ajustes de hardware APM + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.fr.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.fr.resx new file mode 100644 index 0000000000..1bd274beea --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.fr.resx @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuel + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Mode Courant: + + + Activ. capteur optique + + + NOTE: images pou presentation uniquement. Fonctionnel pour Hex, Octo etc... + + + Mode Simple + + + PWM 1750 + + + + Elevons CH1 Rev + + + PWM Actuel: + + + APMSetup + + + Swash-Servo position + + + Activ. Boussole + + + Mode Simple + + + ArduCopter2 + + + Mode Simple + + + type de châssis (+ ou x) + + + 60 + + + 1 + + + Mode Simple + + + Mode Simple + + + 2 + + + Modes + + + Mode Simple + + + 3 + + + Réinit. + + + -60 + + + Haut + + + Mouvement Swash + + + Manuel + + + Deplac. du Gouvernail + + + Calibration du capteur de Voltage.1. Mesurer le voltage sur APM et inscrivez-le dans la boite ci-bas.2. Mesurer le voltage de la batterie et inscrivez-le dans la boite ci-bas.3. Inscrire les ampères par volt de la documentation du capteur de courant ci-bas + + + Calibrer Radio + + + Max + + + Mode de vol 2 + + + Roulis Max + + + Mode de vol 2 + + + Tangage Max + + + en degrés eg 2° 3' W est -2.3 + + + Mode de vol 1 + + + Niveler l'apareil pour copensation des accels + + + Mode de vol 6 + + + Capacité + + + Déclination + + + Activer Sonar + + + PWM 1231 - 1360 + + + Entrée Radio + + + 1500 + + + Mode de vol 4 + + + Mode de vol 5 + + + Gyro + + + PWM 1361 - 1490 + + + Matériel + + + PWM 1491 - 1620 + + + Site Web Déclination + + + 1500 + + + Batterie + + + Zéro + + + Activ. Airspeed + + + 4500 + + + RàZ tout parametres du APM + + + 1000 + + + Moniteur + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.it-IT.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.it-IT.resx new file mode 100644 index 0000000000..2b2636c813 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.it-IT.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Manuale + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Modo Corrente: + + + Abilita Flusso ottico + + + Nota: le immagini sono sono per presentazione, funzionerà con Hexa, etc. + + + Modo Semplice + + + PWM 1750 + + + + Elevatore CH1 Rev + + + PWM Corrente: + + + Imposta APM + + + Posizione del servo del piatto + + + Abilita Magnetometro + + + Modo Semplice + + + ArduCopter2 + + + Modo Semplice + + + Imposta Frame (+ or x) + + + 60 + + + 1 + + + Modo Semplice + + + Modo Semplice + + + 2 + + + Modi + + + Modo Semplice + + + 3 + + + Riavvia + + + -60 + + + Alto + + + Escursione del piatto + + + Manuale + + + Escursione Timone + + + Calibarzione del sensore di voltaggio: +1. Misura il valtaggio di ingresso di APM e inseriscilo nel box sotto +2. Misura il voltaggio della batteria e inseriscilo nel box sotto +3. Dalle caratteristiche del sensore di corrente, inserisci il valore degli ampere per volt nel box qui sotto + + + Calibrazione Radio + + + Massimo + + + Modo di volo 2 + + + Rollio massimo + + + Modo di volo 3 + + + Passo massimo + + + in gradi es 2° 3' W is -2.3 + + + Modo di volo 1 + + + Livella il quad per impostare gli accelerometri + + + Modo di volo 6 + + + Capacità + + + Declinazione + + + Attiva Sonar + + + PWM 1231 - 1360 + + + Ingresso Radio + + + Calibration + + + 1500 + + + Modo di volo 4 + + + Modo di volo 5 + + + Giroscopio + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Sito Web per la Declinazione + + + 1500 + + + Batteria + + + Zero + + + Attiva Sensore Velocità + + + 4500 + + + Resetta APM ai valori di Default + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.pl.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.pl.resx new file mode 100644 index 0000000000..057b932716 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.pl.resx @@ -0,0 +1,318 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 180 + + + Ręczne + + + PWM 0 - 1230 + + + PWM 1621 - 1749 + + + Aktualny tryb: + + + Włącz Optical Flow + + + UWAGA: Obrazy są wyłącznie do prezentacji, działają jedynie z hexa, itp. + + + Tryb prosty + + + PWM 1750 + + + + Odwr. Elevon CH1 + + + Aktualny PWM: + + + Ustawienia APM + + + Pozycja serwa płyty ster. + + + Włącz kompas + + + Tryb prosty + + + ArduCopter2 + + + Tryb prosty + + + Ustawienie ramy (+ lub x) + + + 60 + + + 1 + + + Tryb prosty + + + Tryb prosty + + + 2 + + + Tryby + + + Tryb prosty + + + 3 + + + Reset + + + -60 + + + Góra + + + Zakres ruchu płyty sterującej + + + Ręczne + + + Zakres steru kierunku + + + Kalibracja czujnika napięcia: +1. Zmierz napięcie wejściowe APM i wpisz poniżej +2. Zmierz napięcie baterii i wpisz poniżej +3. Wpisz poniżej ilość amperów/wolt [A/V] z dokumentacji czujnika prądu + + + Kalibracja radia + + + Max + + + Tryb lotu 2 + + + Max przechylenie + + + Tryb lotu 3 + + + Max pochylenie + + + w stopniech np. 2° 3' W to -2.3 + + + Tryb lotu 1 + + + Wypoziomuj quada żeby stawić domyśle offsety przysp. + + + Tryb lotu 6 + + + Pojemność + + + Deklinacja + + + Włącz sonar + + + PWM 1231 - 1360 + + + Wejścia radia + + + Calibration + + + 1500 + + + Tryb lotu 4 + + + Tryb lotu 5 + + + Żyro + + + PWM 1361 - 1490 + + + Hardware + + + PWM 1491 - 1620 + + + Strona www deklinacji + + + 1500 + + + Bateria + + + Zero + + + Włącz prędkość powietrza + + + 4500 + + + Reset APM do stawień domyślnych + + + 1000 + + + Monitor + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.resx index 7080a7d118..eb30a08ab9 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.resx +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.resx @@ -117,4 +117,1465 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + True + + + + NoControl + + + + 67, 19 + + + 39, 17 + + + 137 + + + H1 + + + H1_ENABLE + + + System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox5 + + + 0 + + + True + + + NoControl + + + 6, 19 + + + 55, 17 + + + 136 + + + CCPM + + + CCPM + + + System.Windows.Forms.RadioButton, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox5 + + + 1 + + + 257, 11 + + + 120, 43 + + + 169 + + + Swash Type + + + groupBox5 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 5 + + + NoControl + + + 302, 83 + + + 69, 23 + + + 138 + + + Manual + + + BUT_swash_manual + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 6 + + + True + + + NoControl + + + 19, 157 + + + 40, 13 + + + 122 + + + Bottom + + + label41 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 0 + + + True + + + NoControl + + + 6, 38 + + + 29, 13 + + + 137 + + + Gain + + + label46 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox3 + + + 0 + + + True + + + NoControl + + + 6, 19 + + + 40, 13 + + + 136 + + + Enable + + + label45 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox3 + + + 1 + + + True + + + NoControl + + + 57, 19 + + + 15, 14 + + + 118 + + + GYR_ENABLE + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox3 + + + 2 + + + 41, 35 + + + 47, 20 + + + 119 + + + 1000 + + + GYR_GAIN + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox3 + + + 3 + + + 437, 314 + + + 101, 63 + + + 168 + + + Gyro + + + groupBox3 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 7 + + + NoControl + + + 483, 174 + + + 69, 23 + + + 167 + + + Manual + + + BUT_HS4save + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 8 + + + True + + + NoControl + + + 24, 28 + + + 26, 13 + + + 120 + + + Top + + + label21 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 1 + + + False + + + 18, 173 + + + 43, 20 + + + 119 + + + 1500 + + + COL_MIN + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 2 + + + False + + + 17, 117 + + + 44, 20 + + + 117 + + + 1500 + + + COL_MID + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 3 + + + False + + + 18, 45 + + + 43, 20 + + + 115 + + + 1500 + + + COL_MAX + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox1 + + + 4 + + + False + + + NoControl + + + 11, 89 + + + 58, 23 + + + 110 + + + Zero + + + BUT_0collective + + + ArdupilotMega.MyButton, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + groupBox1 + + + 5 + + + 297, 95 + + + 80, 209 + + + 165 + + + groupBox1 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 9 + + + True + + + NoControl + + + 112, 23 + + + 27, 13 + + + 135 + + + Max + + + label24 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox2 + + + 0 + + + False + + + 21, 40 + + + 43, 20 + + + 132 + + + 1500 + + + HS4_MIN + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox2 + + + 1 + + + False + + + 106, 40 + + + 43, 20 + + + 133 + + + 1500 + + + HS4_MAX + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox2 + + + 2 + + + True + + + NoControl + + + 27, 23 + + + 24, 13 + + + 134 + + + Min + + + label40 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + groupBox2 + + + 3 + + + 437, 186 + + + 169, 78 + + + 166 + + + groupBox2 + + + System.Windows.Forms.GroupBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 10 + + + 126, 314 + + + 44, 20 + + + 164 + + + HS3_TRIM + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 11 + + + 126, 288 + + + 44, 20 + + + 163 + + + HS2_TRIM + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 12 + + + 126, 262 + + + 44, 20 + + + 162 + + + HS1_TRIM + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 13 + + + True + + + NoControl + + + 131, 249 + + + 27, 13 + + + 161 + + + Trim + + + label39 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 14 + + + True + + + NoControl + + + 102, 249 + + + 27, 13 + + + 160 + + + Rev + + + label38 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 15 + + + True + + + NoControl + + + 54, 249 + + + 44, 13 + + + 159 + + + Position + + + label37 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 16 + + + True + + + NoControl + + + 17, 249 + + + 35, 13 + + + 158 + + + Servo + + + label36 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 17 + + + True + + + NoControl + + + 260, 365 + + + 54, 13 + + + 157 + + + Pitch Max + + + label26 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 18 + + + 314, 362 + + + 47, 20 + + + 156 + + + 4500 + + + PIT_MAX + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 19 + + + True + + + NoControl + + + 260, 341 + + + 48, 13 + + + 155 + + + Roll Max + + + label25 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 20 + + + 314, 336 + + + 47, 20 + + + 154 + + + 4500 + + + ROL_MAX + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 21 + + + True + + + NoControl + + + 480, 66 + + + 75, 13 + + + 153 + + + Rudder Travel + + + label23 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 22 + + + True + + + NoControl + + + 236, 66 + + + 72, 13 + + + 150 + + + Swash Travel + + + label22 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 23 + + + True + + + NoControl + + + 27, 317 + + + 13, 13 + + + 149 + + + 3 + + + label20 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 24 + + + True + + + NoControl + + + 27, 291 + + + 13, 13 + + + 148 + + + 2 + + + label19 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 25 + + + True + + + NoControl + + + 27, 265 + + + 13, 13 + + + 147 + + + 1 + + + label18 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 26 + + + 57, 314 + + + 39, 20 + + + 146 + + + 180 + + + SV3_POS + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 27 + + + 57, 288 + + + 39, 20 + + + 145 + + + 60 + + + SV2_POS + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 28 + + + 57, 262 + + + 39, 20 + + + 144 + + + -60 + + + SV1_POS + + + System.Windows.Forms.TextBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 29 + + + True + + + NoControl + + + 105, 317 + + + 15, 14 + + + 143 + + + HS3_REV + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 30 + + + True + + + NoControl + + + 105, 291 + + + 15, 14 + + + 142 + + + HS2_REV + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 31 + + + True + + + NoControl + + + 105, 268 + + + 15, 14 + + + 141 + + + HS1_REV + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 32 + + + True + + + NoControl + + + 42, 66 + + + 109, 13 + + + 140 + + + Swash-Servo position + + + label17 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 33 + + + 17, 17 + + + 396, 93 + + + 242, 42 + + + 152 + + + HS4 + + + ArdupilotMega.HorizontalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 34 + + + 239, 95 + + + 42, 213 + + + 151 + + + HS3 + + + ArdupilotMega.VerticalProgressBar2, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 35 + + + Zoom + + + Microsoft Sans Serif, 9pt + + + 20, 93 + + + 0, 0, 0, 0 + + + 150, 150 + + + 139 + + + Gservoloc + + + AGaugeApp.AGauge, ArdupilotMegaPlanner, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + + + $this + + + 36 + + + True + + + NoControl + + + 529, 268 + + + 27, 13 + + + 174 + + + Trim + + + label44 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 0 + + + True + + + NoControl + + + 496, 268 + + + 27, 13 + + + 173 + + + Rev + + + label43 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 1 + + + True + + + NoControl + + + 448, 288 + + + 42, 13 + + + 172 + + + Rudder + + + label42 + + + System.Windows.Forms.Label, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 2 + + + 532, 284 + + + 44, 20 + + + 171 + + + HS4_TRIM + + + System.Windows.Forms.NumericUpDown, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 3 + + + True + + + NoControl + + + 499, 287 + + + 15, 14 + + + 170 + + + HS4_REV + + + System.Windows.Forms.CheckBox, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + $this + + + 4 + + + True + + + 6, 13 + + + 654, 397 + + + currentStateBindingSource + + + System.Windows.Forms.BindingSource, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + ConfigTradHeli + + + System.Windows.Forms.UserControl, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-Hans.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-Hans.resx new file mode 100644 index 0000000000..f96892c423 --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-Hans.resx @@ -0,0 +1,496 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 遥控输入 + + + 模式 + + + 硬件 + + + 电池 + + + AC2 直升机 + + + 上降副翼 (Elevon) 配置 + + + + 115, 17 + + + Elevons CH2 逆转 + + + 91, 17 + + + Elevons 逆转 + + + 115, 17 + + + Elevons CH1 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 50, 17 + + + 逆转 + + + 校准遥控 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 74, 17 + + + 简单模式 + + + 64, 13 + + + 当前 PWM: + + + 58, 13 + + + 当前模式: + + + 64, 13 + + + 飞行模式 6 + + + 64, 13 + + + 飞行模式 5 + + + 64, 13 + + + 飞行模式 4 + + + 64, 13 + + + 飞行模式 3 + + + 64, 13 + + + 飞行模式 2 + + + 64, 13 + + + 飞行模式 1 + + + 保存模式 + + + 十进制, 2° 3' W 就是 -2.3 + + + 启用光流 + + + 67, 13 + + + 磁偏角网站 + + + 磁偏角 + + + 启用空速计 + + + 启用声纳 + + + 启用罗盘 + + + 58, 13 + + + 输入电压: + + + 94, 13 + + + 测量的电池电压: + + + 58, 13 + + + 电池电压: + + + 52, 13 + + + 分 压 比: + + + 63, 13 + + + 安培/伏特: + + + 48, 18 + + + 传感器 + + + 电压传感器校准: +1. 测量APM输入电压,输入到下方的文本框中 +2. 测量电池电压,输入到下方的文本框中 +3. 从当前的传感器的数据表中找到安培/伏特,输入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 监控器 + + + 175, 13 + + + 设置水平面的默认加速度计偏移 + + + 261, 13 + + + 注: 图片只是用于展示,设置可以用于六轴等机架 + + + 93, 13 + + + 机架设置 (+ 或 x) + + + 找平 + + + 手动 + + + 手动 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 启用 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 43, 13 + + + 方向舵 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微调 + + + 31, 13 + + + 逆转 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵机 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大侧倾 + + + 55, 13 + + + 舵机行程 + + + 79, 13 + + + 斜盘水平微调 + + + 79, 13 + + + 斜盘舵机位置 + + + 重置 + + + 重置 APM 为默认设置 + + + APM设置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-TW.resx b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-TW.resx new file mode 100644 index 0000000000..0c03fbf8ed --- /dev/null +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/ConfigTradHeli.zh-TW.resx @@ -0,0 +1,460 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 重置 + + + 遙控輸入 + + + 模式 + + + 硬件 + + + 電池 + + + 重置 APM 為默認設置 + + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 50, 17 + + + 逆轉 + + + 校準遙控 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 74, 17 + + + 簡單模式 + + + 64, 13 + + + 當前 PWM: + + + 58, 13 + + + 當前模式: + + + 64, 13 + + + 飛行模式 6 + + + 64, 13 + + + 飛行模式 5 + + + 64, 13 + + + 飛行模式 4 + + + 64, 13 + + + 飛行模式 3 + + + 64, 13 + + + 飛行模式 2 + + + 64, 13 + + + 飛行模式 1 + + + 保存模式 + + + 67, 13 + + + 磁偏角網站 + + + 磁偏角 + + + 啟用空速計 + + + 啟用聲納 + + + 啟用羅盤 + + + 63, 13 + + + 安培/伏特: + + + 52, 13 + + + 分 壓 比: + + + 58, 13 + + + 電池電壓: + + + 94, 13 + + + 測量的電池電壓: + + + 58, 13 + + + 輸入電壓: + + + 電壓傳感器校準: +1. 測量APM輸入電壓,輸入到下方的文本框中 +2. 測量電池電壓,輸入到下方的文本框中 +3. 從當前的傳感器的數據表中找到安培/伏特,輸入到下方的文本框中 + + + 31, 13 + + + 容量 + + + 48, 13 + + + 監控器 + + + 175, 13 + + + 設置水平面的默認加速度計偏移 + + + 261, 13 + + + 注: 圖片只是用於展示,設置可以用於六軸等機架 + + + 93, 13 + + + 機架設置 (+ 或 x) + + + 找平 + + + 31, 13 + + + 感度 + + + 31, 13 + + + 啟用 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 43, 13 + + + 方向舵 + + + 手動 + + + 31, 13 + + + 最大 + + + 31, 13 + + + 最小 + + + 手動 + + + 31, 13 + + + 最低 + + + 31, 13 + + + 最高 + + + 0度 + + + 31, 13 + + + 微調 + + + 31, 13 + + + 逆轉 + + + 31, 13 + + + 位置 + + + 31, 13 + + + 舵機 + + + 55, 13 + + + 最大俯仰 + + + 55, 13 + + + 最大側傾 + + + 55, 13 + + + 舵機行程 + + + 79, 13 + + + 斜盤水平微調 + + + 79, 13 + + + 斜盤舵機位置 + + + APM設置 + + \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.Designer.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.Designer.cs index b75d5ddcf3..f0ca41efc7 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.Designer.cs @@ -29,24 +29,40 @@ private void InitializeComponent() { System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(Setup)); + this.lbl_pleaseconnect = new System.Windows.Forms.Label(); this.backstageView = new ArdupilotMega.Controls.BackstageView.BackstageView(); this.SuspendLayout(); // + // lbl_pleaseconnect + // + this.lbl_pleaseconnect.AutoSize = true; + this.lbl_pleaseconnect.Location = new System.Drawing.Point(297, 284); + this.lbl_pleaseconnect.Name = "lbl_pleaseconnect"; + this.lbl_pleaseconnect.Size = new System.Drawing.Size(104, 13); + this.lbl_pleaseconnect.TabIndex = 1; + this.lbl_pleaseconnect.Text = "Please Connect First"; + this.lbl_pleaseconnect.Visible = false; + // // backstageView // this.backstageView.AutoSize = true; this.backstageView.Dock = System.Windows.Forms.DockStyle.Fill; this.backstageView.Location = new System.Drawing.Point(0, 0); this.backstageView.Name = "backstageView"; - this.backstageView.Size = new System.Drawing.Size(831, 455); + this.backstageView.Size = new System.Drawing.Size(823, 468); this.backstageView.TabIndex = 0; // // Setup // - this.ClientSize = new System.Drawing.Size(831, 455); + this.ClientSize = new System.Drawing.Size(823, 468); + this.Controls.Add(this.lbl_pleaseconnect); this.Controls.Add(this.backstageView); this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); + this.MinimumSize = new System.Drawing.Size(839, 506); this.Name = "Setup"; + this.Text = "Setup"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Setup_FormClosing); + this.Load += new System.EventHandler(this.Setup_Load); this.ResumeLayout(false); this.PerformLayout(); @@ -55,5 +71,6 @@ #endregion private Controls.BackstageView.BackstageView backstageView; + private System.Windows.Forms.Label lbl_pleaseconnect; } } diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.cs b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.cs index c87e0f21bf..14d1887d77 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/ConfigurationView/Setup.cs @@ -22,6 +22,22 @@ namespace ArdupilotMega.GCSViews.ConfigurationView this.backstageView.AddPage(new BackstageView.BackstageViewPage(new ConfigBatteryMonitoring(), "Battery Monitor")); this.backstageView.AddPage(new BackstageView.BackstageViewPage(new ConfigAccelerometerCalibration(), "Level Calibration")); this.backstageView.AddPage(new BackstageView.BackstageViewPage(new ConfigTradHeli(), "Heli Setup")); + + this.backstageView.AddPage(new BackstageView.BackstageViewPage(new ArdupilotMega._3DRradio(), "3DR Radio")); + + this.backstageView.AddPage(new BackstageView.BackstageViewPage(new ArdupilotMega.Antenna.Tracker(), "Antenna Tracker")); + + this.backstageView.ActivatePage(backstageView.Pages[0]); + } + + private void Setup_Load(object sender, EventArgs e) + { + + } + + private void Setup_FormClosing(object sender, FormClosingEventArgs e) + { + backstageView.Close(); } } -} +} \ No newline at end of file diff --git a/Tools/ArdupilotMegaPlanner/GCSViews/Firmware.cs b/Tools/ArdupilotMegaPlanner/GCSViews/Firmware.cs index e25765c0d1..8971889c8b 100644 --- a/Tools/ArdupilotMegaPlanner/GCSViews/Firmware.cs +++ b/Tools/ArdupilotMegaPlanner/GCSViews/Firmware.cs @@ -684,7 +684,7 @@ namespace ArdupilotMega.GCSViews private void BUT_setup_Click(object sender, EventArgs e) { - Form temp = new Setup.Setup(); + Form temp = new GCSViews.ConfigurationView.Setup(); ThemeManager.ApplyThemeTo(temp); temp.ShowDialog(); } diff --git a/Tools/ArdupilotMegaPlanner/HUD.cs b/Tools/ArdupilotMegaPlanner/HUD.cs index 4c3795a886..e87062fb46 100644 --- a/Tools/ArdupilotMegaPlanner/HUD.cs +++ b/Tools/ArdupilotMegaPlanner/HUD.cs @@ -258,7 +258,6 @@ namespace hud { e.Graphics.Clear(this.BackColor); e.Graphics.Flush(); - //return; } if ((DateTime.Now - starttime).TotalMilliseconds < 30 && (_bgimage == null)) diff --git a/Tools/ArdupilotMegaPlanner/MAVLink.cs b/Tools/ArdupilotMegaPlanner/MAVLink.cs index b9051e6693..0e918f344f 100644 --- a/Tools/ArdupilotMegaPlanner/MAVLink.cs +++ b/Tools/ArdupilotMegaPlanner/MAVLink.cs @@ -2179,28 +2179,35 @@ namespace ArdupilotMega try { - if ((temp[0] == 'U' || temp[0] == 254) && temp.Length >= temp[1]) { - if (temp[2] != ((recvpacketcount + 1) % 0x100)) + if (temp[3] == '3' && temp[4] == 'D') { - synclost++; // actualy sync loss's - if (temp[2] < ((recvpacketcount + 1) % 0x100)) - { - packetslost += 0x100 - recvpacketcount + temp[2]; - } - else - { - packetslost += temp[2] - recvpacketcount; - } - - log.InfoFormat("lost {0} pkts {1}", temp[2], (int)packetslost); } + else + { + if (temp[2] != ((recvpacketcount + 1) % 0x100)) + { + synclost++; // actualy sync loss's - packetsnotlost++; + if (temp[2] < ((recvpacketcount + 1) % 0x100)) + { + packetslost += 0x100 - recvpacketcount + temp[2]; + } + else + { + packetslost += temp[2] - recvpacketcount; + } - recvpacketcount = temp[2]; + log.InfoFormat("lost {0} pkts {1}", temp[2], (int)packetslost); + } + + packetsnotlost++; + + recvpacketcount = temp[2]; + + } //MAVLINK_MSG_ID_GPS_STATUS //if (temp[5] == MAVLINK_MSG_ID_GPS_STATUS) diff --git a/Tools/ArdupilotMegaPlanner/MainV2.cs b/Tools/ArdupilotMegaPlanner/MainV2.cs index 76ee48fc34..ab59bc95f3 100644 --- a/Tools/ArdupilotMegaPlanner/MainV2.cs +++ b/Tools/ArdupilotMegaPlanner/MainV2.cs @@ -785,6 +785,12 @@ namespace ArdupilotMega private void joysticksend() { + + float rate = 50; + int count = 0; + + DateTime lastratechange = DateTime.Now; + while (true) { try @@ -817,16 +823,43 @@ namespace ArdupilotMega if (joystick.getJoystickAxis(8) != Joystick.joystickaxis.None) rc.chan8_raw = cs.rcoverridech8; - if (lastjoystick.AddMilliseconds(50) < DateTime.Now) + if (lastjoystick.AddMilliseconds(rate) < DateTime.Now) { - // Console.WriteLine(DateTime.Now.Millisecond + " {0} {1} {2} {3} ", rc.chan1_raw, rc.chan2_raw, rc.chan3_raw, rc.chan4_raw); + /* + if (cs.rssi > 0 && cs.remrssi > 0) + { + if (lastratechange.Second != DateTime.Now.Second) + { + if (cs.txbuffer > 90) + { + if (rate < 20) + rate = 21; + rate--; + + if (cs.linkqualitygcs < 70) + rate = 50; + } + else + { + if (rate > 100) + rate = 100; + rate++; + } + + lastratechange = DateTime.Now; + } + + } + */ +// Console.WriteLine(DateTime.Now.Millisecond + " {0} {1} {2} {3} {4}", rc.chan1_raw, rc.chan2_raw, rc.chan3_raw, rc.chan4_raw,rate); comPort.sendPacket(rc); + count++; lastjoystick = DateTime.Now; } } } - System.Threading.Thread.Sleep(50); + System.Threading.Thread.Sleep(20); } catch { } // cant fall out } @@ -1856,7 +1889,7 @@ namespace ArdupilotMega } if (keyData == (Keys.Control | Keys.A)) // test { - Form frm = new _3DRradio(); + Control frm = new _3DRradio(); ThemeManager.ApplyThemeTo(frm); frm.Show(); return true; diff --git a/Tools/ArdupilotMegaPlanner/Msi/wix.pdb b/Tools/ArdupilotMegaPlanner/Msi/wix.pdb index 8fb53eec78ed739b330092c5331470c195ec9319..f59c64535f3ced7d0ab770ba42bb6f2564d7dca8 100644 GIT binary patch delta 553 zcmZpe!`Lu~aRUpN#Lwk*{)`L^3{FRuM{knpap=GQ+hyvyeZiY$xZVh|#@uphKew4z zrj?1&X7XgYPjFBu_Bt zivq)a2VAZg$rITnDQAI_RdC75LMW4g5om!s69WS`5Q6{{Lrgk^#Q>DcO9^6OV6cD+ hFfrsI8CsOz1(XAY4hR4pTC(|sgAFsD6yWlN69DO_Vxj;5 delta 533 zcmZpe!`Lu~aRUpN#C_{Je?|rdhNK-ltqJUg{%cHw&U39>d2+K1*Be1r$C!`eeVch@ zTA3J~CQp_-&e%LTT0R@dJ`N%`8!Jo)N^Cx@)DDslR^86DBX~29+Bzo2*3G*$^qCl2 zCcoB72T5rs1J!NUj^<-z+$?OB$igCFnWi+k!Y+Yj!Neq`$#;N^86Xh{do|@qC7^p4 z*gymraQebnK!-Mf#6>4M3fD6-6e>vrIqXnbkR+7J0P+#Y6l16WBLl=x5EmpD3dArA zK<0qNL4c8g(>EGOBbf;nhsh-Y8EO!bdIl!A6xh&)4j{i5DuyZ-sU!-tbq8Dy*++#+ zXMu86a5+>@xC0I1h8o6%;t4$lh9DLO1`D`GWM4!obpho-p#uU;KwoV>;b6mzC$?Rl GZ~_45Dp9Wh diff --git a/Tools/ArdupilotMegaPlanner/Radio/3DRradio.Designer.cs b/Tools/ArdupilotMegaPlanner/Radio/3DRradio.Designer.cs index cfd1fb9332..c0769e8072 100644 --- a/Tools/ArdupilotMegaPlanner/Radio/3DRradio.Designer.cs +++ b/Tools/ArdupilotMegaPlanner/Radio/3DRradio.Designer.cs @@ -74,8 +74,7 @@ // // Progressbar // - this.Progressbar.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); + this.Progressbar.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.Progressbar.Location = new System.Drawing.Point(12, 402); this.Progressbar.Name = "Progressbar"; this.Progressbar.Size = new System.Drawing.Size(294, 36); @@ -528,8 +527,7 @@ // // lbl_status // - this.lbl_status.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left) - | System.Windows.Forms.AnchorStyles.Right))); + this.lbl_status.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Left))); this.lbl_status.BackColor = System.Drawing.Color.Transparent; this.lbl_status.Location = new System.Drawing.Point(12, 374); this.lbl_status.Name = "lbl_status"; @@ -580,7 +578,6 @@ // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; - this.ClientSize = new System.Drawing.Size(318, 444); this.Controls.Add(this.BUT_syncS5); this.Controls.Add(this.BUT_syncS3); this.Controls.Add(this.BUT_syncS2); @@ -620,12 +617,9 @@ this.Controls.Add(this.lbl_status); this.Controls.Add(this.Progressbar); this.Controls.Add(this.BUT_upload); - this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon"))); - this.MaximizeBox = false; - this.MinimizeBox = false; this.MinimumSize = new System.Drawing.Size(334, 482); this.Name = "_3DRradio"; - this.Text = "3DRradio"; + this.Size = new System.Drawing.Size(334, 482); this.ResumeLayout(false); this.PerformLayout(); diff --git a/Tools/ArdupilotMegaPlanner/Radio/3DRradio.cs b/Tools/ArdupilotMegaPlanner/Radio/3DRradio.cs index 40901cf4c2..15cd234820 100644 --- a/Tools/ArdupilotMegaPlanner/Radio/3DRradio.cs +++ b/Tools/ArdupilotMegaPlanner/Radio/3DRradio.cs @@ -8,10 +8,11 @@ using System.Text; using System.Windows.Forms; using System.Net; using System.IO; +using ArdupilotMega.Controls.BackstageView; namespace ArdupilotMega { - public partial class _3DRradio : Form + public partial class _3DRradio : BackStageViewContentPanel { public delegate void LogEventHandler(string message, int level = 0); diff --git a/Tools/ArdupilotMegaPlanner/Radio/3DRradio.resx b/Tools/ArdupilotMegaPlanner/Radio/3DRradio.resx index 6d793168ab..2e8ee646bd 100644 --- a/Tools/ArdupilotMegaPlanner/Radio/3DRradio.resx +++ b/Tools/ArdupilotMegaPlanner/Radio/3DRradio.resx @@ -120,6 +120,9 @@ 17, 17 + + 17, 17 + NETID is a 16 bit 'network ID'. This is used to seed the frequency hopping sequence and to identify packets as coming from the right radio. Make sure you use a different NETID from anyone else running the same sort of radio in the area. @@ -158,83 +161,6 @@ stx: number of serial transmit overflows rrx: number of serial receive overflows ecc: number of 12 bit words successfully corrected by the golay code which result in a valid packet CRC - - - - - - AAABAAEAICAAAAEAIACoEAAAFgAAACgAAAAgAAAAQAAAAAEAIAAAAAAAABAAABILAAASCwAAAAAAAAAA - AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADOxkjAtnoOAKpJ4vyiK - c+8nh3D/J4Zv/yeHcP8oi3PvKpJ4vy6fg4AzsZIwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADjGo2AyspPfLZ+D/yiQ - d/8hlXj/G6F9/xeqg/8XqYL/GKqD/xuhfv8ilnn/KZB3/y2fhP8yspPfN8ajYAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADvRrDA1vpzfL6uN/yel - hP8XvJD/DMyY/wfQl/8FzJP/A8qS/wPJkf8EypL/BsyU/wnRmP8PzZn/Gb2R/yemhP8tqoz/Mb2a3zbQ - qkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAA4y6ZgMbWV/yin - iP8WwZP/Btqf/wDPlf8AyI7/A8aP/yfNnv9T2LP/UNax/03XsP8506b/G8ya/wHKkf8F0Zf/CNuf/xLB - kv8fpYT/J7KQ/y7IomAAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAAAAAANcajny+w - kf8hqoj/CNSd/wDRlf8Axor/Hcyd/3Lhwf+p7Nj/o+vV/57m0/+X5dD/k+TN/4/jzf+K5Mz/fuHH/0PW - rf8HzJT/ANCT/wDRlv8OpX//HayI/yrFn58AAAAAAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAADDC - nmAtro7/H62J/wPWmv8Ay47/AMaO/3XhxP+e6tT/mObP/5Pjy/+Q4sr/jODJ/4ffx/+C3MT/f9vC/3nb - wf9y2r7/adq7/2DauP8ZzZv/Fdae/8T/9/9WxKj/HKuI/y7IomAAAAAAAAAAAAAAAAD///8AAAAAAAAA - AAAiuZMwKKyM/x6ohf8C1Zr/AMmL/wHGjv+49OL///////////9+3ML/f9zD/4Dcwv9+28L/e9rA/3bZ - vv9w1rr/Z9S4/17Rs/9Qz63/Qcyn/3LewP////////////n///8MpH7/JbKP/zXQqUAAAAAAAAAAAP// - /wAAAAAAAAAAABymhN8dnn//BNGa/wDKjP8AxY3/sfHf/////////////////2nXt/9w1rv/c9e8/3TX - vP9x17z/a9W5/2TTtf9Y0K//SMyp/zXFoP9i07X/////////////////f/LR/wDQlf8epYT/Mb2a3wAA - AAAAAAAA////AAAAAAADlnJgFZR1/wq4iv8AzpH/AMCD/4rmzf//////////////////////WdGv/2PU - tf9p1rf/atS4/2nUtv9i0rT/Vc+u/0fKpv8zxZz/Ws+w//////////////////////8GyJL/ANCS/xLB - kv8tq4z/OMajYAAAAAD///8AAAAAAACHZt8NkW//ANKV/wDChP9i27r//////////////////////9Dx - 6P9MzKn/Vc+v/17Rsv9g0rP/XNCx/1XNrv9Fyaf/McSd/1fPr///////////////////////QM2m/ynK - oP8JzJX/C9yh/ymmhf80spPfAAAAAP///wAAcUwwAHtc/wCrfP8AyIv/AMKK//////////////////// - /////////////5Dgyv9Gyqb/TMyq/07Nq/9MzKn/Qcmj/y/Fnf9Wzq3//////////////////////57k - 0v8av5T/Lceg/yzOo/8M05v/Hr6T/zCghf80spIw////AABoRYAAclT/AL2H/wDBhf9R1rL///////// - ////////4vfw//////////////////H8+P9KzKn/Ocah/zTFnv8qwpj/Us2t//////////////////// - ////////DLqM/yDBlv8wxp//OM6m/xPPm/8Xz53/LZF5/y+fg4////8AAGNAvwB7Wf8Aw4j/ALyC/4bj - yP+g5tL/g93E/2HSsv9Pzqz/Us6s//////////////////////9Yzq//Gr2S/0jLp/////////////// - /////////////yrDm/8SvI//JMGY/zDHn/81zKT/Is2e/xTUnf8nl3v/LJJ5v////wAAXz3vAIlg/wDA - hf8AuoD/quzZ/5Hjyv9628D/ada2/1jRsP9Jy6f/a9a4//////////////////////+Y4s7///////// - //////////////////+c4tD/AbaH/xW8kf8jwZj/LcWd/y/Jn/8kzJ3/E9Ca/yGjgf8ri3Tv////AABd - PP8Ak2b/AL6D/w/Ekv+m6tf/j+HJ/3vawP9p1rf/W9Gx/0rNqf85yJ//Nsaf//////////////////// - /////////////////////////////wCwe/8AtoT/ELqP/xu+k/8jwZj/KMeb/yHKm/8QzZf/HqyG/ymI - cf////8AAF07/wCSZP8AvYL/GMWU/6Dn1P+K38f/ddi+/27Wuf+E3MX/leHN/6fm1f+l5tX/neLQ//// - ////////////////////////////////////////j9/J/27Vuv9Tzq7/JsKY/xa/kv8aw5T/FcaW/wvL - lf8aqoT/J4dw/////wAAXTv/AJFk/wC9gP8GwY3/mObQ/5rkz/+26dv/y/Hl/8Dt3/+06tz/pebV/5bg - zP+g5NL//////////////v///f7+//7+/v//////7fn2////////////tOnb/6Ll0v+v6Nj/jeDI/zXK - o/8IxJD/BMqS/xaqgv8lh2//////AABeO+8AgVf/AL1//wDBif/R9uv/1PPq/8Tv5P+36t3/rujY/6Lk - 0v+U4cv/jt7J//j8+///////+/38//f8+//2+/r/+Pz7//3+/v/m9/P/9Pv6//D6+P9/28L/jd7J/5jj - z/+h5dL/qOvX/4Hmyf8f1J//E596/yOJcO////8AAGA8vwB3U/8p06P/hufM/8Ty5f/D7+T/s+vb/6bm - 1P+c4c//j9/K/4vcyP/t+fb///7///j8/P/0+/r/8vr5//P7+f/1+/r/+/39///////i9fL/ZNO1/3HW - vP992sH/htzG/4vhyv+S5dD/mO7W/6X74v80noT/Io90v////wAAZkCAAHla/33ny/945cb/nunV/7Xr - 3v+l5tT/luDN/4ndxv992cL/1vLq//v9/P/1+/n/8vv4//L69//z+/j/9Pv5/7Xo2//x+vn///////// - //+y59n/aNS3/3LWvP932r//fNzD/4Ljyf+J7ND/l/bd/yORdf8knH6A////AABuRzAAdlT/Xc6x/23o - xv9s4MH/qurZ/5jiz/+I3cb/edjA/8ju5f/3/Pv/8vv4//H6+P/y+/j/6/f0/7np3v/7/fz//v7+/6fk - 1f+56tz///////////9h0bT/aNW4/23Wu/9v3L//dOLG/37w0f9m1rn/Hpt8/ymujTD///8AAAAAAACD - X98po4X/Z+7K/1vgvP+A4sf/jOHK/3rZwv+r59f/9Pv6/+/69//v+vf/8vr4/9fy6/9n0rf/VM6t/6Di - 0v/N7+f/adO4/1PMrf9t1Lr/i9zI/1/Rs/9h0rX/ZNe4/2bbvf9s5sb/ePfV/z2ylf8lrozfAAAAAP// - /wAAAAAAAJNsYAWQbf9U1rP/Vee//0rYsf993sb/pebV//P7+v/s+Pb/6/f1/+749v+s5tj/Vc2u/1jP - r/9ZzrD/btW5/1bOr/9Wza//Vs6v/1fOr/9Z0LD/WdCy/1vTtP9d1rX/Xt+8/2btyP9k4L//IaaF/y7D - nmAAAAAA////AAAAAAAAAAAAD6J9zyCjgv9S68L/P9+0/2Pevv/5////7/v6/+v59//j9/L/gtvF/1PN - r/9Wz7D/Wc+x/1nQsf9Zz7H/WM6w/1fPsP9UzrD/VM+w/1TPrv9U0a//U9Oy/1Tatv9Z5sD/Y/LL/zSx - lP8qupbPAAAAAAAAAAD///8AAAAAAAAAAAAYto4wGaeE/y23lP8+5rn/6/////j////w//3/ve/i/2bV - uP9Tzq7/Vc+v/1jPsP9Z0LL/WM+w/1fOsf9Wz7D/Us2w/1HOrf9Qzq3/T9Cu/0zSr/9M2LP/TeC5/1bt - xP9HxaX/KLKQ/zTPqDAAAAAAAAAAAP///wAAAAAAAAAAAAAAAAAkvpdgG6iF/y++m//e/////P///3rl - yf9G0K3/VdKy/1bPsf9Wz7H/Vs6w/1bPsP9Sza//Ucyu/0/Nrf9NzKz/S82s/0fOrP9G0a7/QdWv/0Le - tP9I6L7/Q8Ok/yitjP8yyKJgAAAAAAAAAAAAAAAA////AAAAAAAAAAAAAAAAAAAAAAAmwJlgG6iF/yK3 - kP8k3q7/H9el/x7Pn/8tzKT/Q9Cs/1HQsP9Q0K7/TM6u/0nMrf9Hzaz/RMyp/0LNqf8+zqn/ONGo/zTV - qf833rD/O+S4/zvCof8orIv/MMSfYAAAAAAAAAAAAAAAAAAAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAA - AAAkvpdgG6iE/xukgv8gy53/HNql/xzRn/8czJz/HcmZ/yXJnP8qyp7/Lcqg/yzLn/8nypz/JMqc/yTO - n/8l1KT/KN2r/y3Tpv8nq4n/JaqJ/yzAm2AAAAAAAAAAAAAAAAAAAAAAAAAAAP///wAAAAAAAAAAAAAA - AAAAAAAAAAAAAAAAAAAato8wFKN/zxCScv8RnHn/DbqM/wjIlP8GyZT/BsaS/wbFkf8GxZH/B8WR/wfH - k/8IypX/DMmV/xG3jP8WoX3/Fph2/xqkgs8ft5EwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA////AAAA - AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAJVvYACGZM8Aelr/AHlZ/wCFX/8AiWL/AJlr/wCb - bP8AlGf/AI5k/wB/W/8AeFj/AHtb/wCHZd8ClXBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwSzAAaESAAGI/vwBf - Pd8AXTz/AF08/wBdPP8AXz3fAGJAvwBoRIAAcUswAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA - AAAAAAAAAAAAAP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// - /wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP// - /wD///8A////AP///wD///8A/+AD//+AAP/+AAA//AAAH/gAAA/wAAAH4AAAA+AAAAPAAAABwAAAAYAA - AACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAgAAAAIAAAACAAAAAwAAAAcAAAAHgAAAD4AAAA/AA - AAf4AAAP/AAAH/4AAD//gAD//+AD//////8= \ No newline at end of file