2012-08-28 18:11:49 +02:00
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>OutputCalibrationPage</class>
<widget class="QWizardPage" name="OutputCalibrationPage">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>600</width>
<height>400</height>
</rect>
</property>
<property name="windowTitle">
<string>WizardPage</string>
</property>
2012-10-04 15:37:16 +01:00
<layout class="QGridLayout" name="gridLayout">
<item row="0" column="0">
<widget class="QLabel" name="label_2">
<property name="font">
<font>
<pointsize>12</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
2012-09-03 01:01:57 +02:00
</property>
<property name="text">
2012-10-04 15:37:16 +01:00
<string>Output calibration</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QStackedWidget" name="calibrationStack">
<property name="currentIndex">
<number>1</number>
</property>
<widget class="QWidget" name="intro">
<layout class="QVBoxLayout" name="verticalLayout_3">
<item>
<widget class="QLabel" name="label_3">
<property name="text">
<string><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
2012-09-20 21:34:14 -04:00
<html><head><meta name="qrichtext" content="1" /><style type="text/css">
p, li { white-space: pre-wrap; }
2012-09-22 11:21:12 +02:00
</style></head><body style=" font-family:'MS Shell Dlg 2'; font-size:8pt; font-weight:400; font-style:normal;">
<p style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">It is now time to calibrate the output levels for the signals controlling your vehicle. </span></p>
<p align="center" style=" margin-top:12px; margin-bottom:12px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt; font-weight:600; color:#ff0000;">VERY IMPORTANT!</span><span style=" font-family:'Lucida Grande'; font-size:10pt;"><br /></span><span style=" font-family:'Lucida Grande'; font-size:10pt; font-weight:600; color:#ff0000;">REMOVE ALL PROPELLERS FROM THE VEHICLE BEFORE PROCEEDING!</span></p>
2012-09-29 11:47:16 +02:00
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Connect all components according to the illustration on the summary page, and provide power using an external power supply such as a battery before continuing.</span></p>
2012-09-22 11:21:12 +02:00
<p style="-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-family:'Lucida Grande'; font-size:10pt;"><br /></p>
<p style=" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;"><span style=" font-family:'Lucida Grande'; font-size:10pt;">Depending on what vehicle you have selected, both the motors controlled by ESCs and/or servos controlled directly by the OpenPilot controller may have to be calibrated. The following steps will guide you safely through this process. </span></p></body></html></string>
2012-10-04 15:37:16 +01:00
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="motorNeutral">
<layout class="QVBoxLayout" name="verticalLayout_4">
<item>
<widget class="QLabel" name="label_4">
<property name="text">
<string><html><head/><body><p>In this step we will set the neutral rate for the motor highlighted in the illustration to the right. <br/>Plase pay attention to the details and in particular the motors position and its rotation direction.</p><p>To find the neutral rate for this engine, press the Start button below and slide the slider to the right until the engine just starts to spin stably. <br/><br/>When done press button again to stop.</p></body></html></string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="motorNeutralSlider">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1000</number>
</property>
<property name="maximum">
<number>1300</number>
</property>
<property name="singleStep">
<number>10</number>
</property>
<property name="pageStep">
<number>20</number>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="invertedAppearance">
<bool>false</bool>
</property>
<property name="tickPosition">
<enum>QSlider::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>20</number>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="motorNeutralButton">
<property name="text">
<string>Start</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="servoNeutral">
<layout class="QVBoxLayout" name="verticalLayout_5">
<item>
<widget class="QLabel" name="label_6">
<property name="text">
<string><html><head/><body><p>This step calibrates the center position of the servo. To set the center position for this servo, press the Start button below and slide the slider to center the servo. </p><p>When done press button again to stop.</p></body></html></string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="servoCenterSlider">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1000</number>
</property>
<property name="maximum">
<number>2000</number>
</property>
<property name="singleStep">
<number>10</number>
</property>
<property name="pageStep">
<number>20</number>
</property>
<property name="value">
<number>1500</number>
</property>
<property name="tracking">
<bool>true</bool>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="invertedAppearance">
<bool>false</bool>
</property>
<property name="invertedControls">
<bool>false</bool>
</property>
<property name="tickPosition">
<enum>QSlider::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>40</number>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="servoCenterButton">
<property name="text">
<string>Start</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="servoMinMax">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QLabel" name="label_7">
<property name="text">
<string><html><head/><body><p>To save the servo and other hardware from damage we have to set the max and min angles for the servo. </p><p>To set the minimum angle for the servo, press the Start button below and select the top slider and slide it to the left until min angle is reached.</p><p>When done press button again to stop.</p></body></html></string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="servoMinAngleSlider">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1000</number>
</property>
<property name="maximum">
<number>1500</number>
</property>
<property name="singleStep">
<number>10</number>
</property>
<property name="pageStep">
<number>20</number>
</property>
<property name="value">
<number>1500</number>
</property>
<property name="tracking">
<bool>true</bool>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="invertedAppearance">
<bool>false</bool>
</property>
<property name="invertedControls">
<bool>false</bool>
</property>
<property name="tickPosition">
<enum>QSlider::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>40</number>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="servoMinAngleButton">
<property name="text">
<string>Start</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
<widget class="QWidget" name="page">
<layout class="QVBoxLayout" name="verticalLayout_2">
<item>
<widget class="QLabel" name="label_8">
<property name="text">
<string><html><head/><body><p>To set the maximum angle for the servo, press the Start button below and select the top slider and slide it to the right until max angle is reached.</p><p>When done press button again to stop.</p></body></html></string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<widget class="QSlider" name="servoMaxAngleSlider">
<property name="enabled">
<bool>false</bool>
</property>
<property name="minimum">
<number>1500</number>
</property>
<property name="maximum">
<number>2000</number>
</property>
<property name="singleStep">
<number>10</number>
</property>
<property name="pageStep">
<number>20</number>
</property>
<property name="value">
<number>1500</number>
</property>
<property name="tracking">
<bool>true</bool>
</property>
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="invertedAppearance">
<bool>false</bool>
</property>
<property name="invertedControls">
<bool>false</bool>
</property>
<property name="tickPosition">
<enum>QSlider::TicksBelow</enum>
</property>
<property name="tickInterval">
<number>40</number>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="servoMaxAngleButton">
<property name="text">
<string>Start</string>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
</layout>
</widget>
2012-09-03 01:01:57 +02:00
</widget>
2012-10-04 15:37:16 +01:00
</item>
<item row="1" column="1">
<widget class="QGraphicsView" name="vehicleView">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Minimum">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>200</width>
<height>200</height>
</size>
</property>
<property name="frameShape">
<enum>QFrame::NoFrame</enum>
2012-09-09 23:44:42 +02:00
</property>
2012-09-03 01:01:57 +02:00
</widget>
2012-10-04 15:37:16 +01:00
</item>
</layout>
2012-08-28 18:11:49 +02:00
</widget>
<resources/>
2012-09-03 01:01:57 +02:00
<connections>
<connection>
2012-09-09 23:44:42 +02:00
<sender>motorNeutralButton</sender>
2012-09-03 01:01:57 +02:00
<signal>toggled(bool)</signal>
2012-09-09 23:44:42 +02:00
<receiver>motorNeutralSlider</receiver>
2012-09-03 01:01:57 +02:00
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
2012-09-09 23:44:42 +02:00
<x>147</x>
<y>291</y>
2012-09-03 01:01:57 +02:00
</hint>
<hint type="destinationlabel">
2012-09-09 23:44:42 +02:00
<x>150</x>
2012-09-03 01:01:57 +02:00
<y>249</y>
</hint>
</hints>
</connection>
<connection>
2012-09-13 23:49:08 +02:00
<sender>servoMinAngleButton</sender>
2012-09-03 01:01:57 +02:00
<signal>toggled(bool)</signal>
2012-09-13 23:49:08 +02:00
<receiver>servoMinAngleSlider</receiver>
2012-09-03 01:01:57 +02:00
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>147</x>
<y>291</y>
</hint>
<hint type="destinationlabel">
<x>150</x>
<y>249</y>
</hint>
</hints>
</connection>
<connection>
2012-09-09 23:44:42 +02:00
<sender>servoMaxAngleButton</sender>
2012-09-03 01:01:57 +02:00
<signal>toggled(bool)</signal>
2012-09-09 23:44:42 +02:00
<receiver>servoMaxAngleSlider</receiver>
2012-09-03 01:01:57 +02:00
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>147</x>
<y>291</y>
</hint>
<hint type="destinationlabel">
<x>150</x>
<y>249</y>
</hint>
</hints>
</connection>
<connection>
2012-09-13 23:49:08 +02:00
<sender>servoCenterButton</sender>
2012-09-03 01:01:57 +02:00
<signal>toggled(bool)</signal>
2012-09-13 23:49:08 +02:00
<receiver>servoCenterSlider</receiver>
2012-09-03 01:01:57 +02:00
<slot>setEnabled(bool)</slot>
<hints>
<hint type="sourcelabel">
<x>147</x>
<y>291</y>
</hint>
<hint type="destinationlabel">
<x>150</x>
2012-09-09 23:44:42 +02:00
<y>249</y>
2012-09-03 01:01:57 +02:00
</hint>
</hints>
</connection>
</connections>
2012-08-28 18:11:49 +02:00
</ui>