diff --git a/docs/src/Getting Started.adoc b/docs/src/Getting Started.adoc new file mode 100644 index 00000000..876dfa0f --- /dev/null +++ b/docs/src/Getting Started.adoc @@ -0,0 +1,438 @@ +:lang: en + += STMBL Getting Started Guide + +== Description + +STMBL is a motor drive controlled by the STM32 microprocessor. It can +power motors of up to 2.2kW and up to around 350V DC bus voltage. + +The name "STMBL" is based on the combination of the STM32 microprocessor +and BrushLess motor. However the drive is also capable of powering AC +induction motors. The hardware is also capable of driving 3-phase +stepper motors. + +The drive is configurable for a wide range of command and feedback types +through a HAL layer analagous to that used by +http://linuxcnc.org/docs/2.7/html/hal/intro.html[LinuxCNC]. + +Supported command interfaces are: + +* Mesa Smart-Serial +* Step-Dir +* Quadrature +* Serial + ++/-10V control is not supported, though the hardware capability exists. + +Supported feedback interfaces are: + +* Encoder +* Resolver +* sin/cos 1vpp +* Mitsubishi absolute encoder +* Yaskawa absolute encoder +* Sick Hyperface +* Sanyo Denki absolute encoder + +Encoder power is 5V by default but 12V can be selected by jumper pads on +the PCB. + +In addition to motor control and feedback each STMBL drive has two ++/-30V analogue inputs and three 24V / 2A digital outputs. + +== Anatomy of the STMBL + +The STMBL consists of two separate PCBs (though they are made as one, +assembled and then split to be connected in the manner shown below. +The vertical (top) board is the Low Voltage (LV) board and this handles +the command, feedback and configuration tasks. The STM32F4 +microprocessor is in charge of these tasks. +The lower board is the +high-voltage (HV) board and this is where the power driver is situated. +The only connection between the two boards is a serial connection +through a 5kV isolation IC. To make this possible there is a second +STM32 chip on the lower board. This is an STM32F3 and is referred to as +the "F3" in the remainder of this document. The processor on the upper +board is referred to as "F4". + +image::images/ISO1.svg[] + +The connectors on the HV board are 5.08mm pitch. Those on the LV board +are 3.5mm pitch. Mating part numbers are: + +* HV Power: https://octopart.com/1757019-phoenix+contact-789[1757019] +* HV Motor: https://octopart.com/1757022-phoenix+contact-902[1757022] or +https://octopart.com/1792760-phoenix+contact-29279[1792760] +* LV Power: https://octopart.com/1840366-phoenix+contact-6675[1840366] or +https://octopart.com/1862852-phoenix+contact-118535[1862852] +* IO: https://octopart.com/1840405-phoenix+contact-14126[1840405] or +https://octopart.com/1862894-phoenix+contact-79205[1862894] + +If preferred 2 x 3 position or 3 x 2 position plugs can be inserted in +the 6-position sockets. + +Logic power to the LV board should be 24V. A green LED will light +adjacent to the socket when power is supplied. + +WARNING: The LV board is safe up to about 30V but take care that 0V is +common with the PC GND before connecting a USB cable. + +Motor power should be 30 to 350V, though the logic parts of the HV +board may work at 24V for firmware flashing etc. Again a green LED +adjacent to the connector confirms that the board is powered-up. + +WARNING: The HV and LV boards are isolated in normal use but it is easy +to accidentally connect them. One way to do this is via USB cables which +can easily tie GND lines together through the setup PC. It is imperative +that the HV board should be powered from an isolated (and preferably +low voltage) supply when flashing firmware. + +image::images/ISO2.svg[] + +The command and feedback connectors use standard 8P8C (RJ45) connectors +and standard CAT5 or CAT6 cables can be conveniently used. To connect +to cables with larger conductors than supported by CAT5 it is possible +to use, for example, +https://octopart.com/j00026a2001-telegärtner-24873031[Industrial CAT6a] +connectors which can accept core wires up to 1.6mm and overall cable +diameters up to 9.0mm. + +Feedback 0 will typically be the encoder or resolver mounted on the +motor and feedback 1 can be used to connect either Hall sensors for +initial commutation or (potentially) scales mounted directly to the +axes. See the <> section of this document for pin assigments +and typical wiring colour codes. + +The 6-way socket below the 24V logic power connector contains the three +digital outputs. These are current-sinking (switch-to-GND) and each is +adjacent to a 24V suppply pin. DIO0 (nearest the top) is the one that is +typically used to operate the holding brake on motors so-equipped. + +On the top of the drive are two analogue inputs, with 0V and 24V on +either side to that a potentiometer can be connected. These are +typically used as variable-threshold digital inputs and are used, for +example, for axis limit switches. However it is relatively simple to +configure them for other uses in the HAL layer. + +Three LEDS on top of the unit indicate drive status. Red displays error +codes (using <>). Amber indicates that all is well but the +drive is not enabled, and green shows that the drive is active and +operating normally. + +If no LEDs on the top of the board are illuminated, and the green power +LEDs near the power connectors _are_ illuminated then it is probably +necessary to <>. If there are +LEDs lit on top of the drive then it is probably safe to assume that +firmware is loaded. + +== HAL (Hardware Abstraction Layer) + +STMBL uses a Hardware abstraction layer to configure the drive for +different types of motor, feedback and operation mode. +This is conceptually similar to the HAL in LinuxCNC but the format and +cmmands are different. Also, all pins are floating point so no data +conversion is needed. + +An Application called <> is used to interact with the HAL +interface and configure the drive. You will need to install and launch +this before it is possible to configure the STMBL. + +STMBL HAL configuration does not use any commands other than the = sign +and the <> + +Assuming that there is already a motor connected to the drive and that +the drive it powered up the <> display should already be +indicating the motor position feedback. Rotating the motor shaft by hand +might produce something like: + +image::images/servoterm3.png[] + +Though it equally well might not if the configuration is set up for a +resolver and the motor has an encoder. + +It should be possible to make the motor turn at this point without any +further configuration. The commands that follow will set the hv0 module +up to simply rotate the motor open-loop in direct-mode. (like a stepper +motor) with an excitation current of 0.5A. This should be safe for most +motors that the STMBL is a good match for, but you should choose your +own value. For an explanation of direct and quadrature current see the +section on <> + +`hv0.pos = sim0.vel` +`hv0.d_cmd = 0.5` +`hv0.en = 1` + +The rotation speed can be altered by changing the sim0 frequency: + +`sim0.freq = 5` + +STMBL v4 HAL contains a number of components that have built-in linking +behaviour. + + +=== HAL modules +The Servoterm command `show` will list all the HAL modules that can be +loaded (whereas `list` will show all those that currently are loaded) + +The modules available are as follows (the link will take you to the +reference section for each component) + + +<> - The module used for AC induction +motors (cf pmsm) ttc is Torque to Current+ +<> - Analogue to digital converter for Resolver +feedback. Outputs the sine and cosine amplitudes. + +<> - A module used to supply config data to +other modules. + +<> - No idea + +<> - No idea + +<> - no idea + +<> - no idea + +<> - not much idea + +<> - Used to supply position commands +through quadrature signals + +<> Encoder counter, converts AB quadrature +and index on FB0 connector to motor position + +<> + +<> Converts Fanuc 4-channel commutation +signals + +<> Handles the checking and distribution of +fault information and reactons between the modules + +<> This module arbitrates between +commutation inputs for motors where UVW (Hall) sensors are suppplied in +addition to an encoder. + +<> Something to do with testing, I +assume + +<> This module controls the HV board, provides the +current and voltage commands to the H-bridge. + +<> - Something to do with commutation + +<> - Handles homing to the index pulse + +<> - No idea + +<> - Controls the IO, both input and output. + +Including the feedback and command connector LEDs. Also mirrors ABZ and +UVW states. + +<> - Converts linear position into motor +single-turn command positions and vice-versa. + +<> - Surely does something + +<> - A feedback, but from where? + +<> - No idea. +<> - The position PID controller. + +<> - Permananet Magnet Servo Motor control +module. Required for nearly all servo motors. + +<> - Controls the limits for +pmsm, used to clamp the PID + +<> - PMSM torque to current +calculation + +<> - Motor Constant calculations. Nm/A + +<> - Ramp? + +<> - Resolver module for motors that use them. +Calculates rotor position from the sine-cosine of ADC and generates the +excitation. + +<> - Limitation for the Resolver +module + +<> - Very important + +<> - A scaling utility function. + +<> - Provides a set of waveforms useful for motor +characterisation and testing. + +<> - Simple PID. Usable but not used + +<> - Handles communication through the +Mesa Electronics Smart Serial interface. Takes digital (floating point +position and velocity commands and returns digital position and current +feedback data. Also handles STMBL GPIO to LinuxCNC HAL. + +<> - Simple Trajectory Plannner + +<> - Space Vector Modulation + +<> - Graphing terminal in Servoterm. + +<> - Good question + +<> - Hall sensor (trapzeoidal) commutation +module. + +<> - Velocit Observer + +<> - Also not sure + +<> - YoloPID module. Usable but not used. + + +== Servoterm + +Servoterm (servo terminal) provides an interface which allows editing +of the drive HAL configuration. It also provides a rolling graphical +representation of any chosen parameter in the HAL which can be a great +aid to tuning and motor setup. + +Servoterm is supplied as a Google Chrome Add-in. This might seem +somewhat odd, but does provide for good cross-platform availability. + +Servoterm can be downloaded from https://github.com/STMBL/Servoterm-app[ +this link]. +Use the green button to download as a ZIP file and then extract on your +PC (Linux / Mac / PC). Open Google Chrome and click the three-dots icon +-> more-tools -> extensions. + +[width=600, border] +image::images/Extensions.png[] + +Click +"developer mode" and then "Load Unpacked Extension". Then navigate to +the downloaded files and select the "Servoterm" folder. +You should then be presented with the following, including an option to +launch the application. + +[width=600] +[.thumb] +image::images/Extensions2.png[] + +To connect to the STMBL you will need a mini-USB B cable. + +WARNING:Be sure that the 24V PSU is floating or shares a ground +reference with the PC.(Maybe even check the voltage between the +connector and socket before inserting the plug) + +You can then click the "connect" button and you should get something +like the image below. <> + +image::images/servoterm1.png[] + +Taking the buttons from left to right: + +* Connect / Disconnect - Should be fairly self-evident +* Clear - simply clears the screen +* Reset - Resets the connection. Does not reset the STMBL. To do that +type the <> command +* Capture - Allows the output of the graphs to be saved and exported to +file +* Jog - when ticked the left-right arrow keys on the keyboard can be +used to jog the motor. +* Trigger - stops the graph plot until the trigger condition is met. +* Trigger Status Indicator - not a button +* Edit Config - Brings up a sub-window in which the basic system config +can be edited. + +Other than the buttons described above the ramainder of servoterm (and +the STMBL HAL) is controlled by a command-line interface. + +Servoterm uses the up and down arrow keys to scroll through previous +commands, but there is no tab-completion. + +This is mainly described in the <> +section of this document. +The graphing display is controlled by the "term0" interface. Typing +`term0` at the prompt will show output similar to: + +image::images/servoterm2.png[] + +The first two entries are internal information about the HAL component +and can be ignored for now. +The next 8 lines say what internal signal each of the wave plots is +connected to. In this case wave0 (the black one) is connected to a sim +signal, in this case the sine wave. (as you might have guessed, typing +"sim0" will show you the parameters of the simulated signals.) + +To connect wave1 (red) to the sawtooth output (which simulates both +encoder feedback and a position command for steady rotation) then simply +type +`term0.wave1 = sim0.vel` +Each wave has an associated offset and gain parameter that can be used +to adjust vertical scale and position. The `term0.send_step` parameter +functions like the time-base of an oscilloscope. + +=== Servoterm Commands + +The servoterm command list can be obtained at the command line by using +the `help` command. + +* bootloader: enter bootloader +* reset: reset STMBL +* confcrc: Shows the CRC checksum of the loaded config. +* flashloadconf: load config from flash +* flashsaveconf: save config to flash +* loadconf: parse config +* showconf: show config - pressing the `Edit config` button is better. +* appendconf: append string to config - also redundant with the config +editor +* deleteconf: delete config +* hal: print HAL stats +* load: load comp from flash +* show: show comps in flash +* list: show comp instances +* start: start rt system +* stop: stop rt system +* fault: trigger fault +* about: show system infos +* help: print this +* link: load config template +* show_config: show config templates + +=== Servoterm Connection Problems + +== Flashing Firmware + +== Pinouts + +=== Command connector wiring: + +|=== +|Pin |Colour|Smart Serial |Step/Dir |Quadrature + +|1 |Orange Stripe |RX+ |Step+ |A+ +|2 |Orange |RX- |Step- |A- +|3 |Green Stripe | |Dir- |B- +|4 |Blue |TX+ | | +|5 |Blue Stripe |TX- | | +|6 |Green | |Dir+ |B+ +|7 |Brown Stripe |VCC |VCC |VCC +|8 |Brown |GND |GND |GND +|=== + +=== Feedback connector wiring - encoders etc + +|=== +|Pin |Colour |Resolver |Encoder |1Vpp |Mitsubishi |Sanyo-Denki |Yaskawa |Omron + +|1 |Orange Stripe |Sin+ |A+ |Sin+ |A+ | | | +|2 |Orange |Sin- |A- |Sin- |A- | | | +|3 |Green Stripe |Cos- |B- |Cos- |B- | | | +|4 |Blue |Ref- |Z- | | |2 |Blue | +|5 |Blue Stripe |Ref+ |Z+ | | |1 |Brown |5 +|6 |Green |Cos+ |B+ |Cos+ |B+ | | |4 +|7 |Brown Stripe | |VCC |VCC |VCC |VCC |Red |1 +|8 |Brown |GND |GND |GND |GND |GND |Black |2 +|=== + +=== Connector wiring - serial protocols + +|=== +|Pin |Colour|RS485 |RS422 |UART |USART |UART HD |USART HD |SPI |SPI HD + +|1 |Orange Stripe | |A |RX+ |RX+ | | |MISO+ | +|2 |Orange | |B |RX- |RX- | | |MISO- | +|3 |Green Stripe | | | |CLK+ | |CLK+ |CLK+ |CLK+ +|4 |Blue |B |Z |TX- |TX- |TX/RX- |TX/RX- |MOSI- |MOSI- +|5 |Blue Stripe |A |Y |TX+ |TX+ |TX/RX+ |TX/RX+ |MOSI+ |MOSI+ +|6 |Green | | | |CLK- | |CLK- |CLK- |CLK- +|7 |Brown Stripe |VCC |VCC |VCC |VCC |VCC |VCC |VCC |VCC +|8 |Brown |GND |GND |GND |GND |GND |GND |GND |GND +|=== + + +== Blink Codes + +Count the number of blinks of the red LED. Each number indicates a +different class of faults. + +1. Command error - This will be quite common during setup +2. Feedback error +3. Commutation feedback error +4. Joint feedback error +5. Position error +6. Saturation error +7. HV CRC error +8. HV timeout error +9. Overtemperature error +10. High/Low voltage error (Or no communication with F3 board) +11. HV fault +12. Motor overtemperature + + + + + diff --git a/docs/src/Getting Started.html b/docs/src/Getting Started.html new file mode 100644 index 00000000..c362c27a --- /dev/null +++ b/docs/src/Getting Started.html @@ -0,0 +1,1388 @@ + + + + + + + +STMBL Getting Started Guide + + + + + +
+
+

Description

+
+
+

STMBL is a motor drive controlled by the STM32 microprocessor. It can +power motors of up to 2.2kW and up to around 350V DC bus voltage.

+
+
+

The name "STMBL" is based on the combination of the STM32 microprocessor +and BrushLess motor. However the drive is also capable of powering AC +induction motors. The hardware is also capable of driving 3-phase +stepper motors.

+
+
+

The drive is configurable for a wide range of command and feedback types +through a HAL layer analagous to that used by +LinuxCNC.

+
+
+

Supported command interfaces are:

+
+
+
    +
  • +

    Mesa Smart-Serial

    +
  • +
  • +

    Step-Dir

    +
  • +
  • +

    Quadrature

    +
  • +
  • +

    Serial

    +
  • +
+
+
+

+/-10V control is not supported, though the hardware capability exists.

+
+
+

Supported feedback interfaces are:

+
+
+
    +
  • +

    Encoder

    +
  • +
  • +

    Resolver

    +
  • +
  • +

    sin/cos 1vpp

    +
  • +
  • +

    Mitsubishi absolute encoder

    +
  • +
  • +

    Yaskawa absolute encoder

    +
  • +
  • +

    Sick Hyperface

    +
  • +
  • +

    Sanyo Denki absolute encoder

    +
  • +
+
+
+

Encoder power is 5V by default but 12V can be selected by jumper pads on +the PCB.

+
+
+

In addition to motor control and feedback each STMBL drive has two ++/-30V analogue inputs and three 24V / 2A digital outputs.

+
+
+
+
+

Anatomy of the STMBL

+
+
+

The STMBL consists of two separate PCBs (though they are made as one, +assembled and then split to be connected in the manner shown below. +The vertical (top) board is the Low Voltage (LV) board and this handles +the command, feedback and configuration tasks. The STM32F4 +microprocessor is in charge of these tasks. +The lower board is the +high-voltage (HV) board and this is where the power driver is situated. +The only connection between the two boards is a serial connection +through a 5kV isolation IC. To make this possible there is a second +STM32 chip on the lower board. This is an STM32F3 and is referred to as +the "F3" in the remainder of this document. The processor on the upper +board is referred to as "F4".

+
+
+
+ISO1 +
+
+
+

The connectors on the HV board are 5.08mm pitch. Those on the LV board +are 3.5mm pitch. Mating part numbers are:

+
+
+ +
+
+

If preferred 2 x 3 position or 3 x 2 position plugs can be inserted in +the 6-position sockets.

+
+
+

Logic power to the LV board should be 24V. A green LED will light +adjacent to the socket when power is supplied.

+
+
+ + + + + +
+
Warning
+
+The LV board is safe up to about 30V but take care that 0V is +common with the PC GND before connecting a USB cable. +
+
+
+

Motor power should be 30 to 350V, though the logic parts of the HV +board may work at 24V for firmware flashing etc. Again a green LED +adjacent to the connector confirms that the board is powered-up.

+
+
+ + + + + +
+
Warning
+
+The HV and LV boards are isolated in normal use but it is easy +to accidentally connect them. One way to do this is via USB cables which +can easily tie GND lines together through the setup PC. It is imperative +that the HV board should be powered from an isolated (and preferably +low voltage) supply when flashing firmware. +
+
+
+
+ISO2 +
+
+
+

The command and feedback connectors use standard 8P8C (RJ45) connectors +and standard CAT5 or CAT6 cables can be conveniently used. To connect +to cables with larger conductors than supported by CAT5 it is possible +to use, for example, +Industrial CAT6a +connectors which can accept core wires up to 1.6mm and overall cable +diameters up to 9.0mm.

+
+
+

Feedback 0 will typically be the encoder or resolver mounted on the +motor and feedback 1 can be used to connect either Hall sensors for +initial commutation or (potentially) scales mounted directly to the +axes. See the Pinouts section of this document for pin assigments +and typical wiring colour codes.

+
+
+

The 6-way socket below the 24V logic power connector contains the three +digital outputs. These are current-sinking (switch-to-GND) and each is +adjacent to a 24V suppply pin. DIO0 (nearest the top) is the one that is +typically used to operate the holding brake on motors so-equipped.

+
+
+

On the top of the drive are two analogue inputs, with 0V and 24V on +either side to that a potentiometer can be connected. These are +typically used as variable-threshold digital inputs and are used, for +example, for axis limit switches. However it is relatively simple to +configure them for other uses in the HAL layer.

+
+
+

Three LEDS on top of the unit indicate drive status. Red displays error +codes (using blink codes). Amber indicates that all is well but the +drive is not enabled, and green shows that the drive is active and +operating normally.

+
+
+

If no LEDs on the top of the board are illuminated, and the green power +LEDs near the power connectors are illuminated then it is probably +necessary to flash the firmware. If there are +LEDs lit on top of the drive then it is probably safe to assume that +firmware is loaded.

+
+
+
+
+

HAL (Hardware Abstraction Layer)

+
+
+

STMBL uses a Hardware abstraction layer to configure the drive for +different types of motor, feedback and operation mode. +This is conceptually similar to the HAL in LinuxCNC but the format and +cmmands are different. Also, all pins are floating point so no data +conversion is needed.

+
+
+

An Application called Servoterm is used to interact with the HAL +interface and configure the drive. You will need to install and launch +this before it is possible to configure the STMBL.

+
+
+

STMBL HAL configuration does not use any commands other than the = sign +and the servoterm commands

+
+
+

Assuming that there is already a motor connected to the drive and that +the drive it powered up the Servoterm display should already be +indicating the motor position feedback. Rotating the motor shaft by hand +might produce something like:

+
+
+
+servoterm3 +
+
+
+

Though it equally well might not if the configuration is set up for a +resolver and the motor has an encoder.

+
+
+

It should be possible to make the motor turn at this point without any +further configuration. The commands that follow will set the hv0 module +up to simply rotate the motor open-loop in direct-mode. (like a stepper +motor) with an excitation current of 0.5A. This should be safe for most +motors that the STMBL is a good match for, but you should choose your +own value. For an explanation of direct and quadrature current see the +section on [Motor Control Basics]

+
+
+

hv0.pos = sim0.vel +hv0.d_cmd = 0.5 +hv0.en = 1

+
+
+

The rotation speed can be altered by changing the sim0 frequency:

+
+
+

sim0.freq = 5

+
+
+

STMBL v4 HAL contains a number of components that have built-in linking +behaviour.

+
+
+

HAL modules

+
+

The Servoterm command show will list all the HAL modules that can be +loaded (whereas list will show all those that currently are loaded)

+
+
+

The modules available are as follows (the link will take you to the +reference section for each component)

+
+
+

acim_ttc - The module used for AC induction +motors (cf pmsm) ttc is Torque to Current+ +adc - Analogue to digital converter for Resolver +feedback. Outputs the sine and cosine amplitudes.
+conf - A module used to supply config data to +other modules.
+curpid - No idea
+dc - No idea
+dc_limits - no idea
+dc_ttc - no idea
+dq - not much idea
+enc_cmd - Used to supply position commands +through quadrature signals
+enc_fb Encoder counter, converts AB quadrature +and index on FB0 connector to motor position
+encm
+fanuc Converts Fanuc 4-channel commutation +signals
+fault Handles the checking and distribution of +fault information and reactons between the modules
+fb_switch This module arbitrates between +commutation inputs for motors where UVW (Hall) sensors are suppplied in +addition to an encoder.
+hal_test Something to do with testing, I +assume
+hv This module controls the HV board, provides the +current and voltage commands to the H-bridge.
+idq - Something to do with commutation
+idx_home - Handles homing to the index pulse
+iit - No idea
+io - Controls the IO, both input and output.
+Including the feedback and command connector LEDs. Also mirrors ABZ and +UVW states.
+linrev - Converts linear position into motor +single-turn command positions and vice-versa.
+move - Surely does something
+o_fb - A feedback, but from where?
+pe - No idea. +pid - The position PID controller.
+pmsm - Permananet Magnet Servo Motor control +module. Required for nearly all servo motors.
+pmsm_limits - Controls the limits for +pmsm, used to clamp the PID
+pmsm_ttc - PMSM torque to current +calculation
+psi - Motor Constant calculations. Nm/A
+ramp - Ramp?
+res - Resolver module for motors that use them. +Calculates rotor position from the sine-cosine of ADC and generates the +excitation.
+reslimit - Limitation for the Resolver +module
+rev - Very important
+scale - A scaling utility function.
+sim - Provides a set of waveforms useful for motor +characterisation and testing.
+spid - Simple PID. Usable but not used
+sserial - Handles communication through the +Mesa Electronics Smart Serial interface. Takes digital (floating point +position and velocity commands and returns digital position and current +feedback data. Also handles STMBL GPIO to LinuxCNC HAL.
+stp - Simple Trajectory Plannner
+svm - Space Vector Modulation
+term - Graphing terminal in Servoterm.
+uf - Good question
+uvw - Hall sensor (trapzeoidal) commutation +module.
+vel - Velocit Observer
+vel_int - Also not sure
+ypid - YoloPID module. Usable but not used.

+
+
+
+
+
+

Servoterm

+
+
+

Servoterm (servo terminal) provides an interface which allows editing +of the drive HAL configuration. It also provides a rolling graphical +representation of any chosen parameter in the HAL which can be a great +aid to tuning and motor setup.

+
+
+

Servoterm is supplied as a Google Chrome Add-in. This might seem +somewhat odd, but does provide for good cross-platform availability.

+
+
+

Servoterm can be downloaded from +this link. +Use the green button to download as a ZIP file and then extract on your +PC (Linux / Mac / PC). Open Google Chrome and click the three-dots icon +→ more-tools → extensions.

+
+
+
+Extensions +
+
+
+

Click +"developer mode" and then "Load Unpacked Extension". Then navigate to +the downloaded files and select the "Servoterm" folder. +You should then be presented with the following, including an option to +launch the application.

+
+
+
+Extensions2 +
+
+
+

To connect to the STMBL you will need a mini-USB B cable.

+
+
+

WARNING:Be sure that the 24V PSU is floating or shares a ground +reference with the PC.(Maybe even check the voltage between the +connector and socket before inserting the plug)

+
+
+

You can then click the "connect" button and you should get something +like the image below. what if I can +not connect

+
+
+
+servoterm1 +
+
+
+

Taking the buttons from left to right:

+
+
+
    +
  • +

    Connect / Disconnect - Should be fairly self-evident

    +
  • +
  • +

    Clear - simply clears the screen

    +
  • +
  • +

    Reset - Resets the connection. Does not reset the STMBL. To do that +type the reset command

    +
  • +
  • +

    Capture - Allows the output of the graphs to be saved and exported to +file

    +
  • +
  • +

    Jog - when ticked the left-right arrow keys on the keyboard can be +used to jog the motor.

    +
  • +
  • +

    Trigger - stops the graph plot until the trigger condition is met.

    +
  • +
  • +

    Trigger Status Indicator - not a button

    +
  • +
  • +

    Edit Config - Brings up a sub-window in which the basic system config +can be edited.

    +
  • +
+
+
+

Other than the buttons described above the ramainder of servoterm (and +the STMBL HAL) is controlled by a command-line interface.

+
+
+

Servoterm uses the up and down arrow keys to scroll through previous +commands, but there is no tab-completion.

+
+
+

This is mainly described in the HAL +section of this document. +The graphing display is controlled by the "term0" interface. Typing +term0 at the prompt will show output similar to:

+
+
+
+servoterm2 +
+
+
+

The first two entries are internal information about the HAL component +and can be ignored for now. +The next 8 lines say what internal signal each of the wave plots is +connected to. In this case wave0 (the black one) is connected to a sim +signal, in this case the sine wave. (as you might have guessed, typing +"sim0" will show you the parameters of the simulated signals.)

+
+
+

To connect wave1 (red) to the sawtooth output (which simulates both +encoder feedback and a position command for steady rotation) then simply +type +term0.wave1 = sim0.vel +Each wave has an associated offset and gain parameter that can be used +to adjust vertical scale and position. The term0.send_step parameter +functions like the time-base of an oscilloscope.

+
+
+

Servoterm Commands

+
+

The servoterm command list can be obtained at the command line by using +the help command.

+
+
+
    +
  • +

    bootloader: enter bootloader

    +
  • +
  • +

    reset: reset STMBL

    +
  • +
  • +

    confcrc: Shows the CRC checksum of the loaded config.

    +
  • +
  • +

    flashloadconf: load config from flash

    +
  • +
  • +

    flashsaveconf: save config to flash

    +
  • +
  • +

    loadconf: parse config

    +
  • +
  • +

    showconf: show config - pressing the Edit config button is better.

    +
  • +
  • +

    appendconf: append string to config - also redundant with the config +editor

    +
  • +
  • +

    deleteconf: delete config

    +
  • +
  • +

    hal: print HAL stats

    +
  • +
  • +

    load: load comp from flash

    +
  • +
  • +

    show: show comps in flash

    +
  • +
  • +

    list: show comp instances

    +
  • +
  • +

    start: start rt system

    +
  • +
  • +

    stop: stop rt system

    +
  • +
  • +

    fault: trigger fault

    +
  • +
  • +

    about: show system infos

    +
  • +
  • +

    help: print this

    +
  • +
  • +

    link: load config template

    +
  • +
  • +

    show_config: show config templates

    +
  • +
+
+
+
+

Servoterm Connection Problems

+ +
+
+
+
+

Flashing Firmware

+
+ +
+
+
+

Pinouts

+
+
+

Command connector wiring:

+ +++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinColourSmart SerialStep/DirQuadrature

1

Orange Stripe

RX+

Step+

A+

2

Orange

RX-

Step-

A-

3

Green Stripe

Dir-

B-

4

Blue

TX+

5

Blue Stripe

TX-

6

Green

Dir+

B+

7

Brown Stripe

VCC

VCC

VCC

8

Brown

GND

GND

GND

+
+
+

Feedback connector wiring - encoders etc

+ +++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinColourResolverEncoder1VppMitsubishiSanyo-DenkiYaskawaOmron

1

Orange Stripe

Sin+

A+

Sin+

A+

2

Orange

Sin-

A-

Sin-

A-

3

Green Stripe

Cos-

B-

Cos-

B-

4

Blue

Ref-

Z-

2

Blue

5

Blue Stripe

Ref+

Z+

1

Brown

5

6

Green

Cos+

B+

Cos+

B+

4

7

Brown Stripe

VCC

VCC

VCC

VCC

Red

1

8

Brown

GND

GND

GND

GND

GND

Black

2

+
+
+

Connector wiring - serial protocols

+ ++++++++++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
PinColourRS485RS422UARTUSARTUART HDUSART HDSPISPI HD

1

Orange Stripe

A

RX+

RX+

MISO+

2

Orange

B

RX-

RX-

MISO-

3

Green Stripe

CLK+

CLK+

CLK+

CLK+

4

Blue

B

Z

TX-

TX-

TX/RX-

TX/RX-

MOSI-

MOSI-

5

Blue Stripe

A

Y

TX+

TX+

TX/RX+

TX/RX+

MOSI+

MOSI+

6

Green

CLK-

CLK-

CLK-

CLK-

7

Brown Stripe

VCC

VCC

VCC

VCC

VCC

VCC

VCC

VCC

8

Brown

GND

GND

GND

GND

GND

GND

GND

GND

+
+
+
+
+ +
+
+

Count the number of blinks of the red LED. Each number indicates a +different class of faults.

+
+
+
    +
  1. +

    Command error - This will be quite common during setup

    +
  2. +
  3. +

    Feedback error

    +
  4. +
  5. +

    Commutation feedback error

    +
  6. +
  7. +

    Joint feedback error

    +
  8. +
  9. +

    Position error

    +
  10. +
  11. +

    Saturation error

    +
  12. +
  13. +

    HV CRC error

    +
  14. +
  15. +

    HV timeout error

    +
  16. +
  17. +

    Overtemperature error

    +
  18. +
  19. +

    High/Low voltage error (Or no communication with F3 board)

    +
  20. +
  21. +

    HV fault

    +
  22. +
  23. +

    Motor overtemperature

    +
  24. +
+
+
+
+
+ + + \ No newline at end of file diff --git a/docs/src/HAL Reference.adoc b/docs/src/HAL Reference.adoc new file mode 100644 index 00000000..29ed2bf7 --- /dev/null +++ b/docs/src/HAL Reference.adoc @@ -0,0 +1,877 @@ + +== HAL Reference + +All modules have `-rt_prio` and `frt_prio` HAL "pins" and these are not +listed here. + + +=== io + +- fan +- state +- fault +- out0 +- out1 +- out2 +- in0 +- in1 +- ind0 +- ind1 +- ind0n +- ind1n +- th0 +- th1 +- CTX +- CRX +- C12 +- C36 +- C54 +- cmd_remap +- swd_remap +- DIO +- CK +- fb0g +- fb0y +- fb1g +- fb1y +- cmdg +- cmdy +- fb0 +- fb1 +- fbd0 +- fbd1 +- fbd0n +- fbd1n +- fbth0 +- fbth1 +- fb0a +- fb0b +- fb0z +- fb1a +- fb1b +- fb1z +- fbsd + +=== hv + +- d_cmd +- q_cmd +- pos +- vel +- en +- phase_mode +- cmd_mode +- r +- l +- psi +- cur_p +- cur_i +- cur_ff +- cur_ind +- max_y +- max_cur +- dc_volt +- d_fb +- q_fb +- abs_cur +- hv_temp +- mot_temp +- core_temp +- fault +- y +- u_fb +- v_fb +- w_fb +- rev +- com_error +- pwm_volt +- uart_sr +- uart_dr +- crc_error +- timeout +- scale + + +=== enc_cmd + +- res +- pos +- a +- b +- fault +- mode +- remap + + +=== o_fb + +- a +- b + + +=== sserial + +- error +- crc_error +- connected +- timeout +- pos_cmd +- pos_cmd_d +- pos_fb +- vel_fb +- current +- scale +- in0 +- in1 +- in2 +- in3 +- fault +- out0 +- out1 +- out2 +- out3 +- enable +- index_clear +- index_out +- pos_advance + + +=== encm + +- pos +- error +- state +- dma + + +=== adc + +- sin +- cos +- sin3 +- cos3 +- quad +- sin1 +- cos1 +- res_en +- sin_gain +- cos_gain +- sin_offset +- cos_offset +- send_step +- offset0 +- offset1 +- offset2 +- offset3 +- offset4 +- offset5 +- offset6 +- offset7 +- gain0 +- gain1 +- gain2 +- gain3 +- gain4 +- gain5 +- gain6 +- gain7 + + +=== enc_fb + +- res +- ires +- pos +- abs_pos +- state +- index +- a +- b +- ipos +- sin +- cos +- quad +- oquad +- oquadoff +- qdiff +- error +- amp +- ccr3 +- indexprint + + +=== conf + +- r +- l +- j +- psi +- polecount +- out_rev +- high_mot_temp +- max_mot_temp +- phase_time +- phase_cur +- max_vel +- max_acc +- max_force +- max_dc_cur +- max_ac_cur +- mot_fb_polecount +- mot_fb_offset +- mot_fb_rev +- mot_fb_res +- joint_fb_polecount +- joint_fb_offset +- joint_fb_rev +- joint_fb_res +- com_fb_polecount +- com_fb_offset +- com_fb_rev +- com_fb_res +- cmd_rev +- cmd_res +- max_dc_volt +- max_hv_temp +- max_pos_error +- high_dc_volt +- low_dc_volt +- high_hv_temp +- fan_hv_temp +- fan_mot_temp +- g +- pos_p +- vel_p +- vel_i +- vel_g +- cur_p +- cur_i +- cur_ff +- cur_ind +- max_sat + + +=== res + +- pos +- amp +- quad +- poles +- min_amp +- vel +- sin +- cos +- enable +- error +- state +- tim_oc + + +=== sim + +- amp +- freq +- sin +- msin +- sin2 +- msin2 +- sin3 +- msin3 +- square +- vel +- res +- offset + + +=== term + +- wave0 +- wave1 +- wave2 +- wave3 +- wave4 +- wave5 +- wave6 +- wave7 +- offset0 +- offset1 +- offset2 +- offset3 +- offset4 +- offset5 +- offset6 +- offset7 +- gain0 +- gain1 +- gain2 +- gain3 +- gain4 +- gain5 +- gain6 +- gain7 +- send_step +- con + + +=== curpid + +- en +- cmd_mode +- id_cmd +- iq_cmd +- id_fb +- iq_fb +- ac_current +- ud +- uq +- max_cur +- pwm_volt +- rd +- rq +- ld +- lq +- psi +- ff +- kp +- ki +- kind +- vel +- id_error +- iq_error + + +=== svm + +- u +- v +- w +- udc +- su +- sv +- sw +- cmode +- mode +- enu +- env +- enw + + +=== dq + +- mode +- u +- v +- w +- pos +- polecount +- a +- b +- y +- d +- q + + +=== idq + +- mode +- d +- q +- pos +- polecount +- a +- b +- u +- v +- w + + +=== vel + +- pos_in +- pos_out +- vel +- acc +- w +- d +- g +- h +- j +- lp +- torque +- vel_ff +- en +- pos_error + + +=== rev + +- in +- out +- in_d +- out_d +- rev + + +=== hal_test + +- rt_wait +- frt_wait + + +=== dc + +- uq +- u +- v +- w + +=== ypid + +- pos_ext_cmd +- pos_fb +- pos_error +- vel_ext_cmd +- vel_fb +- vel_cmd +- vel_error +- vel_min +- enable +- out +- pos_p +- vel_p +- vel_i +- vel_ff +- max_vel +- max_acc +- max_out +- vel_sat +- out_sat +- saturated + + +=== fault + +- en +- state +- fault +- en_out +- en_fb +- en_pid +- fb_ready +- cmd_error +- mot_fb_error +- com_fb_error +- joint_fb_error +- hv_error +- hv_temp +- mot_temp +- max_hv_temp +- max_mot_temp +- high_hv_temp +- high_mot_temp +- fan_hv_temp +- fan_mot_temp +- scale +- dc_volt +- min_dc_volt +- high_dc_volt +- max_dc_volt +- dc_cur +- high_dc_cur +- max_dc_cur +- pos_error +- max_pos_error +- sat +- max_sat +- mot_brake +- dc_brake +- hv_fan +- mot_fan +- print +- brake_release + + +=== pid + +- pos_ext_cmd +- pos_fb +- pos_error +- vel_ext_cmd +- vel_fb +- vel_cmd +- vel_error +- acc_ext_cmd +- acc_cmd +- torque_ext_cmd +- torque_cmd +- torque_cor_cmd +- torque_sum +- friction +- damping +- load +- enable +- pos_en +- vel_en +- acc_en +- torque_en +- pos_p +- vel_p +- vel_i +- vel_g +- acc_g +- g +- j +- max_vel +- max_torque +- min_torque +- max_usr_vel +- max_usr_acc +- max_usr_torque +- vel_sat +- acc_sat +- torque_sat +- saturated + + +=== spid + +- cmd +- fb +- en +- kp +- ki +- kd +- ksd +- kdi +- ksdi +- kff0 +- kff1 +- offset +- min_output +- max_output +- max_error +- output +- error +- sat + + +=== pe + +- udc +- idc +- ud +- uq +- id +- iq +- torque +- vel +- r +- j +- cap +- e_el +- e_kin +- p_el_dc +- p_el_ac +- p_m +- p_t + + +=== pmsm + +- psi +- r +- ld +- lq +- polecount +- vel +- ud +- uq +- indd +- indq +- id +- iq +- psi_d +- psi_q +- torque +- drop_q +- drop_d +- drop_v +- drop_exp + +=== pmsm_limits + +- psi +- r +- ld +- lq +- polecount +- ac_volt +- next_max_cur +- next_max_torque +- next_min_cur +- next_min_torque +- max_cur +- max_torque +- min_cur +- min_torque +- abs_max_cur +- abs_max_torque +- abs_max_vel +- iq +- indq + + +=== pmsm_ttc + +- psi +- polecount +- ac +- pc +- nc +- ae +- pe +- ne +- pos +- t +- g +- torque +- cur + + +=== dc_limits + +- psi +- r +- ld +- lq +- ac_volt +- next_max_cur +- next_max_torque +- next_min_cur +- next_min_torque +- max_cur +- max_torque +- min_cur +- min_torque +- abs_max_cur +- abs_max_torque +- abs_max_vel +- iq +- vel + + +=== dc_ttc + +- psi +- torque +- cur + + +=== acim_ttc + +- mode +- torque_n +- cur_n +- slip_n +- polecount +- torque +- vel +- id +- iq +- freq +- slip +- pos + + +=== uvw + +- u +- v +- w +- led +- p0 +- p1 +- p2 +- p3 +- p4 +- p5 +- p6 +- p7 +- pos +- rpos +- state + + +=== fanuc + +- C1 +- C2 +- C4 +- C8 +- pos + + +=== fb_switch + +- polecount +- pos_fb +- vel_fb +- com_fb +- joint_fb +- state +- cmd_pos +- mot_pos +- mot_abs_pos +- mot_polecount +- mot_offset +- mot_state +- mot_rev +- mot_fb_no_offset +- mot_abs_fb_no_offset +- com_pos +- com_abs_pos +- com_polecount +- com_offset +- com_state +- com_rev +- joint_pos +- joint_abs_pos +- joint_offset +- joint_state +- joint_rev +- joint_fb_no_offset +- mot_joint_ratio +- phase_time +- phase_cur +- id +- current_com_pos +- en + + +=== reslimit + +- pos_in +- pos_out +- res + + +=== iit + +- brake_r +- brake +- air_temp +- mot_air_res +- mot_cap +- mot_tau +- mot_temp +- mot_max_temp +- mot_res +- mot_psi +- mot_real_res +- mot_real_psi +- mot_cont_cur +- id +- iq +- flow + + +=== vel_int + +- pos_in +- pos_out +- vel_in +- vel_out +- wd +- error + + +=== linrev + +- scale +- cmd_in +- cmd_out +- cmd_d_in +- cmd_d_out +- fb_in +- fb_out +- fb_d_in +- fb_d_out +- rev_clear +- rev + + +=== psi + +- vel +- dc_volt +- u +- v +- w +- polecount +- drop +- psi +- max_psi + + +=== stp + +- target +- pos +- pos_in +- pos_out +- vel_in +- vel_out +- acc_out +- max_vel +- max_acc +- dtg + + +=== uf + +- un +- fn +- f_cmd +- f_fb +- pos +- ud +- max_acc +- min_acc + + +=== ramp + +- vel_ext_cmd +- vel_fb +- max_torque +- torque_fb +- scale +- max_acc +- vel_cmd + + +=== scale + +- in0 +- out0 +- in1 +- out1 +- scale + + +=== idx_home + +- mot_state +- fb +- fb_abs +- index_en +- index_clear +- pos_out + + +=== move + +- fwd +- rev +- scale +- out diff --git a/docs/src/HAL Reference.html b/docs/src/HAL Reference.html new file mode 100644 index 00000000..e593aab8 --- /dev/null +++ b/docs/src/HAL Reference.html @@ -0,0 +1,2848 @@ + + + + + + + +HAL Reference + + + + + +
+
+

HAL Reference

+
+
+

All modules have -rt_prio and frt_prio HAL "pins" and these are not +listed here.

+
+
+

io

+
+
    +
  • +

    fan

    +
  • +
  • +

    state

    +
  • +
  • +

    fault

    +
  • +
  • +

    out0

    +
  • +
  • +

    out1

    +
  • +
  • +

    out2

    +
  • +
  • +

    in0

    +
  • +
  • +

    in1

    +
  • +
  • +

    ind0

    +
  • +
  • +

    ind1

    +
  • +
  • +

    ind0n

    +
  • +
  • +

    ind1n

    +
  • +
  • +

    th0

    +
  • +
  • +

    th1

    +
  • +
  • +

    CTX

    +
  • +
  • +

    CRX

    +
  • +
  • +

    C12

    +
  • +
  • +

    C36

    +
  • +
  • +

    C54

    +
  • +
  • +

    cmd_remap

    +
  • +
  • +

    swd_remap

    +
  • +
  • +

    DIO

    +
  • +
  • +

    CK

    +
  • +
  • +

    fb0g

    +
  • +
  • +

    fb0y

    +
  • +
  • +

    fb1g

    +
  • +
  • +

    fb1y

    +
  • +
  • +

    cmdg

    +
  • +
  • +

    cmdy

    +
  • +
  • +

    fb0

    +
  • +
  • +

    fb1

    +
  • +
  • +

    fbd0

    +
  • +
  • +

    fbd1

    +
  • +
  • +

    fbd0n

    +
  • +
  • +

    fbd1n

    +
  • +
  • +

    fbth0

    +
  • +
  • +

    fbth1

    +
  • +
  • +

    fb0a

    +
  • +
  • +

    fb0b

    +
  • +
  • +

    fb0z

    +
  • +
  • +

    fb1a

    +
  • +
  • +

    fb1b

    +
  • +
  • +

    fb1z

    +
  • +
  • +

    fbsd

    +
  • +
+
+
+
+

hv

+
+
    +
  • +

    d_cmd

    +
  • +
  • +

    q_cmd

    +
  • +
  • +

    pos

    +
  • +
  • +

    vel

    +
  • +
  • +

    en

    +
  • +
  • +

    phase_mode

    +
  • +
  • +

    cmd_mode

    +
  • +
  • +

    r

    +
  • +
  • +

    l

    +
  • +
  • +

    psi

    +
  • +
  • +

    cur_p

    +
  • +
  • +

    cur_i

    +
  • +
  • +

    cur_ff

    +
  • +
  • +

    cur_ind

    +
  • +
  • +

    max_y

    +
  • +
  • +

    max_cur

    +
  • +
  • +

    dc_volt

    +
  • +
  • +

    d_fb

    +
  • +
  • +

    q_fb

    +
  • +
  • +

    abs_cur

    +
  • +
  • +

    hv_temp

    +
  • +
  • +

    mot_temp

    +
  • +
  • +

    core_temp

    +
  • +
  • +

    fault

    +
  • +
  • +

    y

    +
  • +
  • +

    u_fb

    +
  • +
  • +

    v_fb

    +
  • +
  • +

    w_fb

    +
  • +
  • +

    rev

    +
  • +
  • +

    com_error

    +
  • +
  • +

    pwm_volt

    +
  • +
  • +

    uart_sr

    +
  • +
  • +

    uart_dr

    +
  • +
  • +

    crc_error

    +
  • +
  • +

    timeout

    +
  • +
  • +

    scale

    +
  • +
+
+
+
+

enc_cmd

+
+
    +
  • +

    res

    +
  • +
  • +

    pos

    +
  • +
  • +

    a

    +
  • +
  • +

    b

    +
  • +
  • +

    fault

    +
  • +
  • +

    mode

    +
  • +
  • +

    remap

    +
  • +
+
+
+
+

o_fb

+
+
    +
  • +

    a

    +
  • +
  • +

    b

    +
  • +
+
+
+
+

sserial

+
+
    +
  • +

    error

    +
  • +
  • +

    crc_error

    +
  • +
  • +

    connected

    +
  • +
  • +

    timeout

    +
  • +
  • +

    pos_cmd

    +
  • +
  • +

    pos_cmd_d

    +
  • +
  • +

    pos_fb

    +
  • +
  • +

    vel_fb

    +
  • +
  • +

    current

    +
  • +
  • +

    scale

    +
  • +
  • +

    in0

    +
  • +
  • +

    in1

    +
  • +
  • +

    in2

    +
  • +
  • +

    in3

    +
  • +
  • +

    fault

    +
  • +
  • +

    out0

    +
  • +
  • +

    out1

    +
  • +
  • +

    out2

    +
  • +
  • +

    out3

    +
  • +
  • +

    enable

    +
  • +
  • +

    index_clear

    +
  • +
  • +

    index_out

    +
  • +
  • +

    pos_advance

    +
  • +
+
+
+
+

encm

+
+
    +
  • +

    pos

    +
  • +
  • +

    error

    +
  • +
  • +

    state

    +
  • +
  • +

    dma

    +
  • +
+
+
+
+

adc

+
+
    +
  • +

    sin

    +
  • +
  • +

    cos

    +
  • +
  • +

    sin3

    +
  • +
  • +

    cos3

    +
  • +
  • +

    quad

    +
  • +
  • +

    sin1

    +
  • +
  • +

    cos1

    +
  • +
  • +

    res_en

    +
  • +
  • +

    sin_gain

    +
  • +
  • +

    cos_gain

    +
  • +
  • +

    sin_offset

    +
  • +
  • +

    cos_offset

    +
  • +
  • +

    send_step

    +
  • +
  • +

    offset0

    +
  • +
  • +

    offset1

    +
  • +
  • +

    offset2

    +
  • +
  • +

    offset3

    +
  • +
  • +

    offset4

    +
  • +
  • +

    offset5

    +
  • +
  • +

    offset6

    +
  • +
  • +

    offset7

    +
  • +
  • +

    gain0

    +
  • +
  • +

    gain1

    +
  • +
  • +

    gain2

    +
  • +
  • +

    gain3

    +
  • +
  • +

    gain4

    +
  • +
  • +

    gain5

    +
  • +
  • +

    gain6

    +
  • +
  • +

    gain7

    +
  • +
+
+
+
+

enc_fb

+
+
    +
  • +

    res

    +
  • +
  • +

    ires

    +
  • +
  • +

    pos

    +
  • +
  • +

    abs_pos

    +
  • +
  • +

    state

    +
  • +
  • +

    index

    +
  • +
  • +

    a

    +
  • +
  • +

    b

    +
  • +
  • +

    ipos

    +
  • +
  • +

    sin

    +
  • +
  • +

    cos

    +
  • +
  • +

    quad

    +
  • +
  • +

    oquad

    +
  • +
  • +

    oquadoff

    +
  • +
  • +

    qdiff

    +
  • +
  • +

    error

    +
  • +
  • +

    amp

    +
  • +
  • +

    ccr3

    +
  • +
  • +

    indexprint

    +
  • +
+
+
+
+

conf

+
+
    +
  • +

    r

    +
  • +
  • +

    l

    +
  • +
  • +

    j

    +
  • +
  • +

    psi

    +
  • +
  • +

    polecount

    +
  • +
  • +

    out_rev

    +
  • +
  • +

    high_mot_temp

    +
  • +
  • +

    max_mot_temp

    +
  • +
  • +

    phase_time

    +
  • +
  • +

    phase_cur

    +
  • +
  • +

    max_vel

    +
  • +
  • +

    max_acc

    +
  • +
  • +

    max_force

    +
  • +
  • +

    max_dc_cur

    +
  • +
  • +

    max_ac_cur

    +
  • +
  • +

    mot_fb_polecount

    +
  • +
  • +

    mot_fb_offset

    +
  • +
  • +

    mot_fb_rev

    +
  • +
  • +

    mot_fb_res

    +
  • +
  • +

    joint_fb_polecount

    +
  • +
  • +

    joint_fb_offset

    +
  • +
  • +

    joint_fb_rev

    +
  • +
  • +

    joint_fb_res

    +
  • +
  • +

    com_fb_polecount

    +
  • +
  • +

    com_fb_offset

    +
  • +
  • +

    com_fb_rev

    +
  • +
  • +

    com_fb_res

    +
  • +
  • +

    cmd_rev

    +
  • +
  • +

    cmd_res

    +
  • +
  • +

    max_dc_volt

    +
  • +
  • +

    max_hv_temp

    +
  • +
  • +

    max_pos_error

    +
  • +
  • +

    high_dc_volt

    +
  • +
  • +

    low_dc_volt

    +
  • +
  • +

    high_hv_temp

    +
  • +
  • +

    fan_hv_temp

    +
  • +
  • +

    fan_mot_temp

    +
  • +
  • +

    g

    +
  • +
  • +

    pos_p

    +
  • +
  • +

    vel_p

    +
  • +
  • +

    vel_i

    +
  • +
  • +

    vel_g

    +
  • +
  • +

    cur_p

    +
  • +
  • +

    cur_i

    +
  • +
  • +

    cur_ff

    +
  • +
  • +

    cur_ind

    +
  • +
  • +

    max_sat

    +
  • +
+
+
+
+

res

+
+
    +
  • +

    pos

    +
  • +
  • +

    amp

    +
  • +
  • +

    quad

    +
  • +
  • +

    poles

    +
  • +
  • +

    min_amp

    +
  • +
  • +

    vel

    +
  • +
  • +

    sin

    +
  • +
  • +

    cos

    +
  • +
  • +

    enable

    +
  • +
  • +

    error

    +
  • +
  • +

    state

    +
  • +
  • +

    tim_oc

    +
  • +
+
+
+
+

sim

+
+
    +
  • +

    amp

    +
  • +
  • +

    freq

    +
  • +
  • +

    sin

    +
  • +
  • +

    msin

    +
  • +
  • +

    sin2

    +
  • +
  • +

    msin2

    +
  • +
  • +

    sin3

    +
  • +
  • +

    msin3

    +
  • +
  • +

    square

    +
  • +
  • +

    vel

    +
  • +
  • +

    res

    +
  • +
  • +

    offset

    +
  • +
+
+
+
+

term

+
+
    +
  • +

    wave0

    +
  • +
  • +

    wave1

    +
  • +
  • +

    wave2

    +
  • +
  • +

    wave3

    +
  • +
  • +

    wave4

    +
  • +
  • +

    wave5

    +
  • +
  • +

    wave6

    +
  • +
  • +

    wave7

    +
  • +
  • +

    offset0

    +
  • +
  • +

    offset1

    +
  • +
  • +

    offset2

    +
  • +
  • +

    offset3

    +
  • +
  • +

    offset4

    +
  • +
  • +

    offset5

    +
  • +
  • +

    offset6

    +
  • +
  • +

    offset7

    +
  • +
  • +

    gain0

    +
  • +
  • +

    gain1

    +
  • +
  • +

    gain2

    +
  • +
  • +

    gain3

    +
  • +
  • +

    gain4

    +
  • +
  • +

    gain5

    +
  • +
  • +

    gain6

    +
  • +
  • +

    gain7

    +
  • +
  • +

    send_step

    +
  • +
  • +

    con

    +
  • +
+
+
+
+

curpid

+
+
    +
  • +

    en

    +
  • +
  • +

    cmd_mode

    +
  • +
  • +

    id_cmd

    +
  • +
  • +

    iq_cmd

    +
  • +
  • +

    id_fb

    +
  • +
  • +

    iq_fb

    +
  • +
  • +

    ac_current

    +
  • +
  • +

    ud

    +
  • +
  • +

    uq

    +
  • +
  • +

    max_cur

    +
  • +
  • +

    pwm_volt

    +
  • +
  • +

    rd

    +
  • +
  • +

    rq

    +
  • +
  • +

    ld

    +
  • +
  • +

    lq

    +
  • +
  • +

    psi

    +
  • +
  • +

    ff

    +
  • +
  • +

    kp

    +
  • +
  • +

    ki

    +
  • +
  • +

    kind

    +
  • +
  • +

    vel

    +
  • +
  • +

    id_error

    +
  • +
  • +

    iq_error

    +
  • +
+
+
+
+

svm

+
+
    +
  • +

    u

    +
  • +
  • +

    v

    +
  • +
  • +

    w

    +
  • +
  • +

    udc

    +
  • +
  • +

    su

    +
  • +
  • +

    sv

    +
  • +
  • +

    sw

    +
  • +
  • +

    cmode

    +
  • +
  • +

    mode

    +
  • +
  • +

    enu

    +
  • +
  • +

    env

    +
  • +
  • +

    enw

    +
  • +
+
+
+
+

dq

+
+
    +
  • +

    mode

    +
  • +
  • +

    u

    +
  • +
  • +

    v

    +
  • +
  • +

    w

    +
  • +
  • +

    pos

    +
  • +
  • +

    polecount

    +
  • +
  • +

    a

    +
  • +
  • +

    b

    +
  • +
  • +

    y

    +
  • +
  • +

    d

    +
  • +
  • +

    q

    +
  • +
+
+
+
+

idq

+
+
    +
  • +

    mode

    +
  • +
  • +

    d

    +
  • +
  • +

    q

    +
  • +
  • +

    pos

    +
  • +
  • +

    polecount

    +
  • +
  • +

    a

    +
  • +
  • +

    b

    +
  • +
  • +

    u

    +
  • +
  • +

    v

    +
  • +
  • +

    w

    +
  • +
+
+
+
+

vel

+
+
    +
  • +

    pos_in

    +
  • +
  • +

    pos_out

    +
  • +
  • +

    vel

    +
  • +
  • +

    acc

    +
  • +
  • +

    w

    +
  • +
  • +

    d

    +
  • +
  • +

    g

    +
  • +
  • +

    h

    +
  • +
  • +

    j

    +
  • +
  • +

    lp

    +
  • +
  • +

    torque

    +
  • +
  • +

    vel_ff

    +
  • +
  • +

    en

    +
  • +
  • +

    pos_error

    +
  • +
+
+
+
+

rev

+
+
    +
  • +

    in

    +
  • +
  • +

    out

    +
  • +
  • +

    in_d

    +
  • +
  • +

    out_d

    +
  • +
  • +

    rev

    +
  • +
+
+
+
+

hal_test

+
+
    +
  • +

    rt_wait

    +
  • +
  • +

    frt_wait

    +
  • +
+
+
+
+

dc

+
+
    +
  • +

    uq

    +
  • +
  • +

    u

    +
  • +
  • +

    v

    +
  • +
  • +

    w

    +
  • +
+
+
+
+

ypid

+
+
    +
  • +

    pos_ext_cmd

    +
  • +
  • +

    pos_fb

    +
  • +
  • +

    pos_error

    +
  • +
  • +

    vel_ext_cmd

    +
  • +
  • +

    vel_fb

    +
  • +
  • +

    vel_cmd

    +
  • +
  • +

    vel_error

    +
  • +
  • +

    vel_min

    +
  • +
  • +

    enable

    +
  • +
  • +

    out

    +
  • +
  • +

    pos_p

    +
  • +
  • +

    vel_p

    +
  • +
  • +

    vel_i

    +
  • +
  • +

    vel_ff

    +
  • +
  • +

    max_vel

    +
  • +
  • +

    max_acc

    +
  • +
  • +

    max_out

    +
  • +
  • +

    vel_sat

    +
  • +
  • +

    out_sat

    +
  • +
  • +

    saturated

    +
  • +
+
+
+
+

fault

+
+
    +
  • +

    en

    +
  • +
  • +

    state

    +
  • +
  • +

    fault

    +
  • +
  • +

    en_out

    +
  • +
  • +

    en_fb

    +
  • +
  • +

    en_pid

    +
  • +
  • +

    fb_ready

    +
  • +
  • +

    cmd_error

    +
  • +
  • +

    mot_fb_error

    +
  • +
  • +

    com_fb_error

    +
  • +
  • +

    joint_fb_error

    +
  • +
  • +

    hv_error

    +
  • +
  • +

    hv_temp

    +
  • +
  • +

    mot_temp

    +
  • +
  • +

    max_hv_temp

    +
  • +
  • +

    max_mot_temp

    +
  • +
  • +

    high_hv_temp

    +
  • +
  • +

    high_mot_temp

    +
  • +
  • +

    fan_hv_temp

    +
  • +
  • +

    fan_mot_temp

    +
  • +
  • +

    scale

    +
  • +
  • +

    dc_volt

    +
  • +
  • +

    min_dc_volt

    +
  • +
  • +

    high_dc_volt

    +
  • +
  • +

    max_dc_volt

    +
  • +
  • +

    dc_cur

    +
  • +
  • +

    high_dc_cur

    +
  • +
  • +

    max_dc_cur

    +
  • +
  • +

    pos_error

    +
  • +
  • +

    max_pos_error

    +
  • +
  • +

    sat

    +
  • +
  • +

    max_sat

    +
  • +
  • +

    mot_brake

    +
  • +
  • +

    dc_brake

    +
  • +
  • +

    hv_fan

    +
  • +
  • +

    mot_fan

    +
  • +
  • +

    print

    +
  • +
  • +

    brake_release

    +
  • +
+
+
+
+

pid

+
+
    +
  • +

    pos_ext_cmd

    +
  • +
  • +

    pos_fb

    +
  • +
  • +

    pos_error

    +
  • +
  • +

    vel_ext_cmd

    +
  • +
  • +

    vel_fb

    +
  • +
  • +

    vel_cmd

    +
  • +
  • +

    vel_error

    +
  • +
  • +

    acc_ext_cmd

    +
  • +
  • +

    acc_cmd

    +
  • +
  • +

    torque_ext_cmd

    +
  • +
  • +

    torque_cmd

    +
  • +
  • +

    torque_cor_cmd

    +
  • +
  • +

    torque_sum

    +
  • +
  • +

    friction

    +
  • +
  • +

    damping

    +
  • +
  • +

    load

    +
  • +
  • +

    enable

    +
  • +
  • +

    pos_en

    +
  • +
  • +

    vel_en

    +
  • +
  • +

    acc_en

    +
  • +
  • +

    torque_en

    +
  • +
  • +

    pos_p

    +
  • +
  • +

    vel_p

    +
  • +
  • +

    vel_i

    +
  • +
  • +

    vel_g

    +
  • +
  • +

    acc_g

    +
  • +
  • +

    g

    +
  • +
  • +

    j

    +
  • +
  • +

    max_vel

    +
  • +
  • +

    max_torque

    +
  • +
  • +

    min_torque

    +
  • +
  • +

    max_usr_vel

    +
  • +
  • +

    max_usr_acc

    +
  • +
  • +

    max_usr_torque

    +
  • +
  • +

    vel_sat

    +
  • +
  • +

    acc_sat

    +
  • +
  • +

    torque_sat

    +
  • +
  • +

    saturated

    +
  • +
+
+
+
+

spid

+
+
    +
  • +

    cmd

    +
  • +
  • +

    fb

    +
  • +
  • +

    en

    +
  • +
  • +

    kp

    +
  • +
  • +

    ki

    +
  • +
  • +

    kd

    +
  • +
  • +

    ksd

    +
  • +
  • +

    kdi

    +
  • +
  • +

    ksdi

    +
  • +
  • +

    kff0

    +
  • +
  • +

    kff1

    +
  • +
  • +

    offset

    +
  • +
  • +

    min_output

    +
  • +
  • +

    max_output

    +
  • +
  • +

    max_error

    +
  • +
  • +

    output

    +
  • +
  • +

    error

    +
  • +
  • +

    sat

    +
  • +
+
+
+
+

pe

+
+
    +
  • +

    udc

    +
  • +
  • +

    idc

    +
  • +
  • +

    ud

    +
  • +
  • +

    uq

    +
  • +
  • +

    id

    +
  • +
  • +

    iq

    +
  • +
  • +

    torque

    +
  • +
  • +

    vel

    +
  • +
  • +

    r

    +
  • +
  • +

    j

    +
  • +
  • +

    cap

    +
  • +
  • +

    e_el

    +
  • +
  • +

    e_kin

    +
  • +
  • +

    p_el_dc

    +
  • +
  • +

    p_el_ac

    +
  • +
  • +

    p_m

    +
  • +
  • +

    p_t

    +
  • +
+
+
+
+

pmsm

+
+
    +
  • +

    psi

    +
  • +
  • +

    r

    +
  • +
  • +

    ld

    +
  • +
  • +

    lq

    +
  • +
  • +

    polecount

    +
  • +
  • +

    vel

    +
  • +
  • +

    ud

    +
  • +
  • +

    uq

    +
  • +
  • +

    indd

    +
  • +
  • +

    indq

    +
  • +
  • +

    id

    +
  • +
  • +

    iq

    +
  • +
  • +

    psi_d

    +
  • +
  • +

    psi_q

    +
  • +
  • +

    torque

    +
  • +
  • +

    drop_q

    +
  • +
  • +

    drop_d

    +
  • +
  • +

    drop_v

    +
  • +
  • +

    drop_exp

    +
  • +
+
+
+
+

pmsm_limits

+
+
    +
  • +

    psi

    +
  • +
  • +

    r

    +
  • +
  • +

    ld

    +
  • +
  • +

    lq

    +
  • +
  • +

    polecount

    +
  • +
  • +

    ac_volt

    +
  • +
  • +

    next_max_cur

    +
  • +
  • +

    next_max_torque

    +
  • +
  • +

    next_min_cur

    +
  • +
  • +

    next_min_torque

    +
  • +
  • +

    max_cur

    +
  • +
  • +

    max_torque

    +
  • +
  • +

    min_cur

    +
  • +
  • +

    min_torque

    +
  • +
  • +

    abs_max_cur

    +
  • +
  • +

    abs_max_torque

    +
  • +
  • +

    abs_max_vel

    +
  • +
  • +

    iq

    +
  • +
  • +

    indq

    +
  • +
+
+
+
+

pmsm_ttc

+
+
    +
  • +

    psi

    +
  • +
  • +

    polecount

    +
  • +
  • +

    ac

    +
  • +
  • +

    pc

    +
  • +
  • +

    nc

    +
  • +
  • +

    ae

    +
  • +
  • +

    pe

    +
  • +
  • +

    ne

    +
  • +
  • +

    pos

    +
  • +
  • +

    t

    +
  • +
  • +

    g

    +
  • +
  • +

    torque

    +
  • +
  • +

    cur

    +
  • +
+
+
+
+

dc_limits

+
+
    +
  • +

    psi

    +
  • +
  • +

    r

    +
  • +
  • +

    ld

    +
  • +
  • +

    lq

    +
  • +
  • +

    ac_volt

    +
  • +
  • +

    next_max_cur

    +
  • +
  • +

    next_max_torque

    +
  • +
  • +

    next_min_cur

    +
  • +
  • +

    next_min_torque

    +
  • +
  • +

    max_cur

    +
  • +
  • +

    max_torque

    +
  • +
  • +

    min_cur

    +
  • +
  • +

    min_torque

    +
  • +
  • +

    abs_max_cur

    +
  • +
  • +

    abs_max_torque

    +
  • +
  • +

    abs_max_vel

    +
  • +
  • +

    iq

    +
  • +
  • +

    vel

    +
  • +
+
+
+
+

dc_ttc

+
+
    +
  • +

    psi

    +
  • +
  • +

    torque

    +
  • +
  • +

    cur

    +
  • +
+
+
+
+

acim_ttc

+
+
    +
  • +

    mode

    +
  • +
  • +

    torque_n

    +
  • +
  • +

    cur_n

    +
  • +
  • +

    slip_n

    +
  • +
  • +

    polecount

    +
  • +
  • +

    torque

    +
  • +
  • +

    vel

    +
  • +
  • +

    id

    +
  • +
  • +

    iq

    +
  • +
  • +

    freq

    +
  • +
  • +

    slip

    +
  • +
  • +

    pos

    +
  • +
+
+
+
+

uvw

+
+
    +
  • +

    u

    +
  • +
  • +

    v

    +
  • +
  • +

    w

    +
  • +
  • +

    led

    +
  • +
  • +

    p0

    +
  • +
  • +

    p1

    +
  • +
  • +

    p2

    +
  • +
  • +

    p3

    +
  • +
  • +

    p4

    +
  • +
  • +

    p5

    +
  • +
  • +

    p6

    +
  • +
  • +

    p7

    +
  • +
  • +

    pos

    +
  • +
  • +

    rpos

    +
  • +
  • +

    state

    +
  • +
+
+
+
+

fanuc

+
+
    +
  • +

    C1

    +
  • +
  • +

    C2

    +
  • +
  • +

    C4

    +
  • +
  • +

    C8

    +
  • +
  • +

    pos

    +
  • +
+
+
+
+

fb_switch

+
+
    +
  • +

    polecount

    +
  • +
  • +

    pos_fb

    +
  • +
  • +

    vel_fb

    +
  • +
  • +

    com_fb

    +
  • +
  • +

    joint_fb

    +
  • +
  • +

    state

    +
  • +
  • +

    cmd_pos

    +
  • +
  • +

    mot_pos

    +
  • +
  • +

    mot_abs_pos

    +
  • +
  • +

    mot_polecount

    +
  • +
  • +

    mot_offset

    +
  • +
  • +

    mot_state

    +
  • +
  • +

    mot_rev

    +
  • +
  • +

    mot_fb_no_offset

    +
  • +
  • +

    mot_abs_fb_no_offset

    +
  • +
  • +

    com_pos

    +
  • +
  • +

    com_abs_pos

    +
  • +
  • +

    com_polecount

    +
  • +
  • +

    com_offset

    +
  • +
  • +

    com_state

    +
  • +
  • +

    com_rev

    +
  • +
  • +

    joint_pos

    +
  • +
  • +

    joint_abs_pos

    +
  • +
  • +

    joint_offset

    +
  • +
  • +

    joint_state

    +
  • +
  • +

    joint_rev

    +
  • +
  • +

    joint_fb_no_offset

    +
  • +
  • +

    mot_joint_ratio

    +
  • +
  • +

    phase_time

    +
  • +
  • +

    phase_cur

    +
  • +
  • +

    id

    +
  • +
  • +

    current_com_pos

    +
  • +
  • +

    en

    +
  • +
+
+
+
+

reslimit

+
+
    +
  • +

    pos_in

    +
  • +
  • +

    pos_out

    +
  • +
  • +

    res

    +
  • +
+
+
+
+

iit

+
+
    +
  • +

    brake_r

    +
  • +
  • +

    brake

    +
  • +
  • +

    air_temp

    +
  • +
  • +

    mot_air_res

    +
  • +
  • +

    mot_cap

    +
  • +
  • +

    mot_tau

    +
  • +
  • +

    mot_temp

    +
  • +
  • +

    mot_max_temp

    +
  • +
  • +

    mot_res

    +
  • +
  • +

    mot_psi

    +
  • +
  • +

    mot_real_res

    +
  • +
  • +

    mot_real_psi

    +
  • +
  • +

    mot_cont_cur

    +
  • +
  • +

    id

    +
  • +
  • +

    iq

    +
  • +
  • +

    flow

    +
  • +
+
+
+
+

vel_int

+
+
    +
  • +

    pos_in

    +
  • +
  • +

    pos_out

    +
  • +
  • +

    vel_in

    +
  • +
  • +

    vel_out

    +
  • +
  • +

    wd

    +
  • +
  • +

    error

    +
  • +
+
+
+
+

linrev

+
+
    +
  • +

    scale

    +
  • +
  • +

    cmd_in

    +
  • +
  • +

    cmd_out

    +
  • +
  • +

    cmd_d_in

    +
  • +
  • +

    cmd_d_out

    +
  • +
  • +

    fb_in

    +
  • +
  • +

    fb_out

    +
  • +
  • +

    fb_d_in

    +
  • +
  • +

    fb_d_out

    +
  • +
  • +

    rev_clear

    +
  • +
  • +

    rev

    +
  • +
+
+
+
+

psi

+
+
    +
  • +

    vel

    +
  • +
  • +

    dc_volt

    +
  • +
  • +

    u

    +
  • +
  • +

    v

    +
  • +
  • +

    w

    +
  • +
  • +

    polecount

    +
  • +
  • +

    drop

    +
  • +
  • +

    psi

    +
  • +
  • +

    max_psi

    +
  • +
+
+
+
+

stp

+
+
    +
  • +

    target

    +
  • +
  • +

    pos

    +
  • +
  • +

    pos_in

    +
  • +
  • +

    pos_out

    +
  • +
  • +

    vel_in

    +
  • +
  • +

    vel_out

    +
  • +
  • +

    acc_out

    +
  • +
  • +

    max_vel

    +
  • +
  • +

    max_acc

    +
  • +
  • +

    dtg

    +
  • +
+
+
+
+

uf

+
+
    +
  • +

    un

    +
  • +
  • +

    fn

    +
  • +
  • +

    f_cmd

    +
  • +
  • +

    f_fb

    +
  • +
  • +

    pos

    +
  • +
  • +

    ud

    +
  • +
  • +

    max_acc

    +
  • +
  • +

    min_acc

    +
  • +
+
+
+
+

ramp

+
+
    +
  • +

    vel_ext_cmd

    +
  • +
  • +

    vel_fb

    +
  • +
  • +

    max_torque

    +
  • +
  • +

    torque_fb

    +
  • +
  • +

    scale

    +
  • +
  • +

    max_acc

    +
  • +
  • +

    vel_cmd

    +
  • +
+
+
+
+

scale

+
+
    +
  • +

    in0

    +
  • +
  • +

    out0

    +
  • +
  • +

    in1

    +
  • +
  • +

    out1

    +
  • +
  • +

    scale

    +
  • +
+
+
+
+

idx_home

+
+
    +
  • +

    mot_state

    +
  • +
  • +

    fb

    +
  • +
  • +

    fb_abs

    +
  • +
  • +

    index_en

    +
  • +
  • +

    index_clear

    +
  • +
  • +

    pos_out

    +
  • +
+
+
+
+

move

+
+
    +
  • +

    fwd

    +
  • +
  • +

    rev

    +
  • +
  • +

    scale

    +
  • +
  • +

    out

    +
  • +
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/docs/src/ISO1.svg b/docs/src/ISO1.svg new file mode 100644 index 00000000..67738dd0 --- /dev/null +++ b/docs/src/ISO1.svg @@ -0,0 +1,53897 @@ + + + +image/svg+xmlThermistor Connector +Motor DC Power Input (30 to 350V) + +Motor 3-phase output U +Logic Power (+24V) +Motor DC Power Input - +Logic Power (0V) +Motor 3-phase Output V +Motor 3-phase Output W +STM32F4 +Micro-USB connector +Red Status LED +Yellow Status LED +Green Status LED +Output 0 - +Output 0 + +Output 1 - +Output 1 + +Output 2 - +Output 2 + +Input 0 +24V +Alt CMD Connector +Input 0 IN +Input 0 0V +Input 1 +24V +Input 1 IN +Input 1 0V +LV Board Boot Pad + \ No newline at end of file diff --git a/docs/src/images/Extensions.png b/docs/src/images/Extensions.png new file mode 100644 index 00000000..3cb406f8 Binary files /dev/null and b/docs/src/images/Extensions.png differ diff --git a/docs/src/images/Extensions2.png b/docs/src/images/Extensions2.png new file mode 100644 index 00000000..5b78bd76 Binary files /dev/null and b/docs/src/images/Extensions2.png differ diff --git a/docs/src/images/ISO1.svg b/docs/src/images/ISO1.svg new file mode 100644 index 00000000..e9a44cc4 --- /dev/null +++ b/docs/src/images/ISO1.svg @@ -0,0 +1,53897 @@ + + + +image/svg+xmlThermistor Connector +Motor DC Power Input (30 to 350V) + +Motor 3-phase output U +Logic Power (+24V) +Motor DC Power Input - +Logic Power (0V) +Motor 3-phase Output V +Motor 3-phase Output W +STM32F4 +Micro-USB connector +Red Status LED +Yellow Status LED +Green Status LED +Output 0 - +Output 0 + +Output 1 - +Output 1 + +Output 2 - +Output 2 + +Input 0 +24V +Alt CMD Connector +Input 0 IN +Input 0 0V +Input 1 +24V +Input 1 IN +Input 1 0V +LV Board Boot Pad + \ No newline at end of file diff --git a/docs/src/images/ISO2.svg b/docs/src/images/ISO2.svg new file mode 100644 index 00000000..27323e99 --- /dev/null +++ b/docs/src/images/ISO2.svg @@ -0,0 +1,4667 @@ + + + +image/svg+xmlCommand Connector +Feedback 0 Connector +Feedback 1 Connector +HV Board Boot Pad +Fan Connection + \ No newline at end of file diff --git a/docs/src/images/servoterm1.png b/docs/src/images/servoterm1.png new file mode 100644 index 00000000..98a6dbdd Binary files /dev/null and b/docs/src/images/servoterm1.png differ diff --git a/docs/src/images/servoterm2.png b/docs/src/images/servoterm2.png new file mode 100644 index 00000000..2b9d6fec Binary files /dev/null and b/docs/src/images/servoterm2.png differ diff --git a/docs/src/images/servoterm3.png b/docs/src/images/servoterm3.png new file mode 100644 index 00000000..1db0fd02 Binary files /dev/null and b/docs/src/images/servoterm3.png differ