https://wiki.satnogs.org/api.php?action=feedcontributions&user=Gharryh&feedformat=atomSatNOGS Wiki - User contributions [en]2024-03-29T09:12:06ZUser contributionsMediaWiki 1.32.0https://wiki.satnogs.org/index.php?title=File:Uc.png&diff=1958File:Uc.png2018-02-25T18:10:26Z<p>Gharryh: Gharryh uploaded a new version of File:Uc.png</p>
<hr />
<div></div>Gharryhhttps://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller&diff=1957SatNOGS Rotator Controller2018-02-25T18:05:25Z<p>Gharryh: /* Micro controller */</p>
<hr />
<div>{{Template:Development<br />
|Name= SatNOGS Rotator Controller<br />
|image= Rotator controller v2.jpg<br />
|type= Rotator Controller for SatNOGS rotator.<br />
|cost= ?<br />
|status= Working<br />
|latest-release-name= v2<br />
|latest-release= v2<br />
|source-repo= https://github.com/satnogs/satnogs-rotator-controller SatNOGS Rotator Controller<br />
|documentation= https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller SatNOGS wiki<br />
}}<br />
<br />
== Intro ==<br />
SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator.<br />
Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.<br />
<br />
== Rotator Controller v2 ==<br />
<gallery><br />
Schematic.png<br />
Pcb.png<br />
</gallery><br />
<br />
The PCB are tested in this [https://network.satnogs.org/stations/9/ ground station]. <br />
<br />
=== Features ===<br />
* It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.<br />
* Main micro-controller is [https://store.arduino.cc/arduino-pro-mini Arduino pro-mini] dev-board with ATmega328p.<br />
* The modular design includes plug-in either [https://www.pololu.com/product/2133 DRV8825]/[https://www.pololu.com/product/1182 A4988] or [https://www.pololu.com/product/1213/resources DC motor drivers] (MC33926).<br />
* The power supply in embed in the same board in contrast with previous version.<br />
* Filter in power supply of micro controller.<br />
* It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.<br />
* A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-<s>temperature</s>heating.<br />
* More dev-pins to connect other peripherals like IMU, LCD display.<br />
* Pins with RC-Low Pass filter for end-stops.<br />
* Default communication interface is RS-485 (WIP) but it can <s>be</s> also be used as a UART.<br />
* Avoid connection with GNDD directly with motor GND use keep out area.<br />
* Electrolytic capacitor and TVS-diode in PSU input<br />
<br />
=== Build sequence ===<br />
* Make sure you have a [[SatNOGS Rotator v3|mechanical assembly]] of the rotator constructed and ready<br />
* Buy the PCB. [https://oshpark.com OshPark]([https://oshpark.com/shared_projects/8eKNZnFG Board]) or [http://dirtypcbs.com DirtyPCBs.com] have been used in the past with good results.<br />
* Assemble the PCB, by soldering the components<br />
* Burn the firmware<br />
* Using the wiring diagram, connect the controller to the Rotator<br />
* You are ready! Proceed with testing<br />
<br />
<br />
==== Micro controller ====<br />
<gallery mode=packed heights="250px"><br />
Uc.png|Microcontroller<br />
Uc_orientation.png|Microcontroller Orientation<br />
I2c_pullup.png|I2C pull-up resistors<br />
</gallery><br />
<!-- changed at feb.25th 2018<br />
{|<br />
[[File:Uc.png|thumb|320x240px|Microcontroller]]<br />
|<br />
[[File:Uc_orientation.png|thumb|320x240px|Microcontroller Orientation]]<br />
|<br />
[[File:I2c_pullup.png|thumb|320x240px|I2C pull-up resistors|left]]<br />
|}<br />
<br clear="all"/>--><br />
<br />
==== Motor Specification ====<br />
Maximum specification<br />
* rotation speed: ~1200(200RPM) deg/s (after 1.8*30 = 54 gear reduction ~20deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 1.2Nm (after 1.8*30 = 54 gear reduction 64.5Nm)<br />
<br />
Minimum specification<br />
* rotation speed: ~360(60RPM) deg/s (after 1.8*30 = 54 gear reduction ~6.5deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 0.48Nm (after 1.8*30 = 54 gear reduction 25.92Nm)<br />
<br />
You can design an adapter, to mount any motor to motor mount, like [https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator/blob/master/rotator_parts/motor_mount_flange.fcstd dc motor flange].<br />
This is the [https://grobotronics.com/stepper-motor-mount-nema-17.html motor mount].<br />
<br />
The DC motor that we use is [https://www.pololu.com/product/1104 50:1 Metal Gearmotor 37Dx54L mm], <br />
* Size: 37D x 54L mm<br />
* Weight: 195 g<br />
* Shaft diameter: 6 mm<br />
* Free-run speed @ 12V: 200 rpm<br />
* Free-run current @ 12V: 300 mA<br />
* Stall current @ 12V: 5000 mA<br />
* Stall torque @ 12V: 1.2Nm<br />
<br />
The stepper motor that we use is [https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html Nema 17 Bipolar 59Ncm], <br />
* Size: &#9649;42 x 48 mm<br />
* Weight: 390 g<br />
* Shaft diameter: 5 mm<br />
* Step Angle: 1.8 deg <br />
* Nominal speed @ 12V: 720deg/s<br />
* Rated Current/phase: 2.0A<br />
* Stall torque @ 12V: 0.59Nm<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Drivers ====<br />
===== Stepper motor driver =====<br />
[[File:Stepper_2.png|thumb|320x240px|Stepper motor driver]]<br />
[[File:Stepper_1.png|thumb|320x240px|Jumpers]]<br />
[[File:Stepper_orientation.jpg|thumb|320x240px|Orientation]]<br />
<br />
For the stepper motor driver 2 options are tested, [https://www.pololu.com/product/2133 DRV8825] and [https://www.pololu.com/product/1182 A4988].<br />
For both options it is necessary to solder:<br />
* 2 electrolytic capacitors C3, C4 100uF<br />
* 4 single 0.1" male connectors for U3, U4<br />
* 2 fixed terminal blocks, Phoenix 1985467<br />
* 6 jumpers to adjust the micro-step, '''default option is Full Step'''<br />
* '''Not''' solder 2 resistors 100k, R4, R7<br />
<br />
Be careful:<br />
* [http://reprap.org/wiki/Pololu_stepper_driver_board adjust the current (current limiting) for stepper motors] <br />
* add a heat-sink.<br />
* plug the stepper motor drivers<br />
<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''JP3/JP6'''<br />
| align="center" style="background:#f0f0f0;"|'''JP2/JP5'''<br />
| align="center" style="background:#f0f0f0;"|'''JP1/JP4'''<br />
| align="center" style="background:#f0f0f0;"|'''Microstep Resolution'''<br />
|-<br />
| align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Full step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''Half step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/4 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/8 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/16 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
|}<br />
<br />
===== DC motor driver =====<br />
The DC motor controller is [https://www.pololu.com/product/1213 Dual MC33926 Motor Driver Carrier ]<br />
<br />
* Motor driver: MC33926<br />
* Motor channels: 2<br />
* Minimum operating voltage: 5V<br />
* Maximum operating voltage: 28V<br />
* Operating voltage: 12V<br />
* Continuous output current per channel: 2.5A<br />
* Current sense: 0.525 V/A<br />
* Maximum PWM frequency: 20 kHz<br />
* Operating PWM frequency: 3921.5Hz (~4kHz)<br />
* Minimum logic voltage: 2.5V<br />
* Operating logic voltage: 5V<br />
* Maximum logic voltage: 5.5V<br />
<br clear="all"/><br />
<br />
==== Communication ====<br />
===== ''UART'' =====<br />
[[File:Jumper.png|thumb|320x240px|UART Jumpers]]<br />
[[File:Rs 485.png|thumb|320x240px|Pin Header]]<br />
<br />
To use UART:<br />
* solder JP7 and JP8<br />
* solder pin header 0.1" female connector<br />
* not solder C1, U2, R18, R9, R8, R1, D3<br />
* A is TX and B is RX<br />
<br />
===== ''RS-485'' =====<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Power Supply ====<br />
[[File:Psu.png|thumb|320x240px|Power Supply]]<br />
<br />
Recommended power supply for rotator controller is: 48V @ 1A DC.<br />
A good choice is [https://gr.mouser.com/ProductDetail/709-LRS50-48 MEAN WELL LRS-50-48]<br />
<br />
The switching power supply could get as input voltage, 19-60V DC.<br />
In different input voltages, must be change the components like<br />
D4 and F1.<br />
<br />
<br />
<br clear="all"/><br />
<br />
==== Endstops ====<br />
* Mechanical Endstops<br />
<br />
[[File:Endstop.jpg|thumb|320x240px|Endstop]]<br />
<br />
<br clear="all"/><br />
<br />
==== Encoders ====<br />
For stepper motor setup is optional (AS5601 encoder).<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Wiring ====<br />
<br />
[[File:Tmp_wiring.jpg|thumb|center|800x420px|alt=|Temporary wiring]]<br />
<br />
<br clear="all"/><br />
<br />
==== Rotator Controller enclosure - Placement ====<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
=== Firmware and Pin Assignments ===<br />
<br />
===== Firmware =====<br />
<br />
[https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware More info in gitlab repository]<br />
[https://github.com/ph4as/dc_pid_control For DC motors]<br />
<br />
===== Pins Configuration =====<br />
* M1IN1 6, Step or PWM1<br />
* M1IN2 5, Direction or PWM2<br />
* M1SF 7, Status flag<br />
* M1FB A1, Load measurment<br />
<br />
* M2IN1 11, Step or PWM1<br />
* M2IN2 3, Direction or PWM2<br />
* M2SF 10, Status flag<br />
* M2FB A0, Load measurment<br />
<br />
* MOTOR_EN 8, Enable/Disable motors<br />
<br />
* SW1 9, Endstop for axis 1<br />
* SW2 4, Endstop for axis 2<br />
<br />
* RS485_DIR 2, RS485 Half Duplex direction pin<br />
<br />
* SDA_PIN 3, Data I2C pin<br />
* SCL_PIN 4, Clock I2C pin<br />
<br />
* PIN12 12, Digital output pin<br />
* PIN13 13, Digital output pin<br />
* A2 A2, Analog input pin<br />
* A3 A3, Analog input pin<br />
<br />
<br clear="all"/><br />
<br />
=== Pre-Flight Check ===<br />
Need to add testing procedure here.<br />
<br />
How do you align the rotator?<br />
<br />
<br clear="all"/><br />
<br />
== Rotator Controller v1 ==<br />
<br />
<br clear="all"/></div>Gharryhhttps://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller&diff=1954SatNOGS Rotator Controller2018-02-17T19:26:05Z<p>Gharryh: /* Motor Specification */</p>
<hr />
<div>{{Template:Development<br />
|Name= SatNOGS Rotator Controller<br />
|image= Rotator controller v2.jpg<br />
|type= Rotator Controller for SatNOGS rotator.<br />
|cost= ?<br />
|status= Working<br />
|latest-release-name= v2<br />
|latest-release= v2<br />
|source-repo= https://github.com/satnogs/satnogs-rotator-controller SatNOGS Rotator Controller<br />
|documentation= https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller SatNOGS wiki<br />
}}<br />
<br />
== Intro ==<br />
SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator.<br />
Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.<br />
<br />
== Rotator Controller v2 ==<br />
<gallery><br />
Schematic.png<br />
Pcb.png<br />
</gallery><br />
<br />
The PCB are tested in this [https://network.satnogs.org/stations/9/ ground station]. <br />
<br />
=== Features ===<br />
* It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.<br />
* Main micro-controller is [https://store.arduino.cc/arduino-pro-mini Arduino pro-mini] dev-board with ATmega328p.<br />
* The modular design includes plug-in either [https://www.pololu.com/product/2133 DRV8825]/[https://www.pololu.com/product/1182 A4988] or [https://www.pololu.com/product/1213/resources DC motor drivers] (MC33926).<br />
* The power supply in embed in the same board in contrast with previous version.<br />
* Filter in power supply of micro controller.<br />
* It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.<br />
* A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-<s>temperature</s>heating.<br />
* More dev-pins to connect other peripherals like IMU, LCD display.<br />
* Pins with RC-Low Pass filter for end-stops.<br />
* Default communication interface is RS-485 (WIP) but it can <s>be</s> also be used as a UART.<br />
* Avoid connection with GNDD directly with motor GND use keep out area.<br />
* Electrolytic capacitor and TVS-diode in PSU input<br />
<br />
=== Build sequence ===<br />
* Make sure you have a [[SatNOGS Rotator v3|mechanical assembly]] of the rotator constructed and ready<br />
* Buy the PCB. [https://oshpark.com OshPark]([https://oshpark.com/shared_projects/8eKNZnFG Board]) or [http://dirtypcbs.com DirtyPCBs.com] have been used in the past with good results.<br />
* Assemble the PCB, by soldering the components<br />
* Burn the firmware<br />
* Using the wiring diagram, connect the controller to the Rotator<br />
* You are ready! Proceed with testing<br />
<br />
<br />
==== Micro controller ====<br />
{|<br />
[[File:Uc.png|thumb|320x240px|Microcontroller]]<br />
|<br />
[[File:Uc_orientation.png|thumb|320x240px|Microcontroller Orientation]]<br />
|<br />
[[File:I2c_pullup.png|thumb|320x240px|I2C pull-up resistors|left]]<br />
|}<br />
<br clear="all"/><br />
<br />
==== Motor Specification ====<br />
Maximum specification<br />
* rotation speed: ~1200(200RPM) deg/s (after 1.8*30 = 54 gear reduction ~20deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 1.2Nm (after 1.8*30 = 54 gear reduction 64.5Nm)<br />
<br />
Minimum specification<br />
* rotation speed: ~360(60RPM) deg/s (after 1.8*30 = 54 gear reduction ~6.5deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 0.48Nm (after 1.8*30 = 54 gear reduction 25.92Nm)<br />
<br />
You can design an adapter, to mount any motor to motor mount, like [https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator/blob/master/rotator_parts/motor_mount_flange.fcstd dc motor flange].<br />
This is the [https://grobotronics.com/stepper-motor-mount-nema-17.html motor mount].<br />
<br />
The DC motor that we use is [https://www.pololu.com/product/1104 50:1 Metal Gearmotor 37Dx54L mm], <br />
* Size: 37D x 54L mm<br />
* Weight: 195 g<br />
* Shaft diameter: 6 mm<br />
* Free-run speed @ 12V: 200 rpm<br />
* Free-run current @ 12V: 300 mA<br />
* Stall current @ 12V: 5000 mA<br />
* Stall torque @ 12V: 1.2Nm<br />
<br />
The stepper motor that we use is [https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html Nema 17 Bipolar 59Ncm], <br />
* Size: &#9649;42 x 48 mm<br />
* Weight: 390 g<br />
* Shaft diameter: 5 mm<br />
* Step Angle: 1.8 deg <br />
* Nominal speed @ 12V: 720deg/s<br />
* Rated Current/phase: 2.0A<br />
* Stall torque @ 12V: 0.59Nm<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Drivers ====<br />
===== Stepper motor driver =====<br />
[[File:Stepper_2.png|thumb|320x240px|Stepper motor driver]]<br />
[[File:Stepper_1.png|thumb|320x240px|Jumpers]]<br />
[[File:Stepper_orientation.jpg|thumb|320x240px|Orientation]]<br />
<br />
For the stepper motor driver 2 options are tested, [https://www.pololu.com/product/2133 DRV8825] and [https://www.pololu.com/product/1182 A4988].<br />
For both options it is necessary to solder:<br />
* 2 electrolytic capacitors C3, C4 100uF<br />
* 4 single 0.1" male connectors for U3, U4<br />
* 2 fixed terminal blocks, Phoenix 1985467<br />
* 6 jumpers to adjust the micro-step, '''default option is Full Step'''<br />
* '''Not''' solder 2 resistors 100k, R4, R7<br />
<br />
Be careful:<br />
* [http://reprap.org/wiki/Pololu_stepper_driver_board adjust the current (current limiting) for stepper motors] <br />
* add a heat-sink.<br />
* plug the stepper motor drivers<br />
<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''JP3/JP6'''<br />
| align="center" style="background:#f0f0f0;"|'''JP2/JP5'''<br />
| align="center" style="background:#f0f0f0;"|'''JP1/JP4'''<br />
| align="center" style="background:#f0f0f0;"|'''Microstep Resolution'''<br />
|-<br />
| align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Full step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''Half step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/4 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/8 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/16 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
|}<br />
<br />
===== DC motor driver =====<br />
The DC motor controller is [https://www.pololu.com/product/1213 Dual MC33926 Motor Driver Carrier ]<br />
<br />
* Motor driver: MC33926<br />
* Motor channels: 2<br />
* Minimum operating voltage: 5V<br />
* Maximum operating voltage: 28V<br />
* Operating voltage: 12V<br />
* Continuous output current per channel: 2.5A<br />
* Current sense: 0.525 V/A<br />
* Maximum PWM frequency: 20 kHz<br />
* Operating PWM frequency: 3921.5Hz (~4kHz)<br />
* Minimum logic voltage: 2.5V<br />
* Operating logic voltage: 5V<br />
* Maximum logic voltage: 5.5V<br />
<br clear="all"/><br />
<br />
==== Communication ====<br />
===== ''UART'' =====<br />
[[File:Jumper.png|thumb|320x240px|UART Jumpers]]<br />
[[File:Rs 485.png|thumb|320x240px|Pin Header]]<br />
<br />
To use UART:<br />
* solder JP7 and JP8<br />
* solder pin header 0.1" female connector<br />
* not solder C1, U2, R18, R9, R8, R1, D3<br />
* A is TX and B is RX<br />
<br />
===== ''RS-485'' =====<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Power Supply ====<br />
[[File:Psu.png|thumb|320x240px|Power Supply]]<br />
<br />
Recommended power supply for rotator controller is: 48V @ 1A DC.<br />
A good choice is [https://gr.mouser.com/ProductDetail/709-LRS50-48 MEAN WELL LRS-50-48]<br />
<br />
The switching power supply could get as input voltage, 19-60V DC.<br />
In different input voltages, must be change the components like<br />
D4 and F1.<br />
<br />
<br />
<br clear="all"/><br />
<br />
==== Endstops ====<br />
* Mechanical Endstops<br />
<br />
[[File:Endstop.jpg|thumb|320x240px|Endstop]]<br />
<br />
<br clear="all"/><br />
<br />
==== Encoders ====<br />
For stepper motor setup is optional (AS5601 encoder).<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Wiring ====<br />
<br />
[[File:Tmp_wiring.jpg|thumb|center|800x420px|alt=|Temporary wiring]]<br />
<br />
<br clear="all"/><br />
<br />
==== Rotator Controller enclosure - Placement ====<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
=== Firmware and Pin Assignments ===<br />
<br />
===== Firmware =====<br />
<br />
[https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware More info in gitlab repository]<br />
[https://github.com/ph4as/dc_pid_control For DC motors]<br />
<br />
===== Pins Configuration =====<br />
* M1IN1 6, Step or PWM1<br />
* M1IN2 5, Direction or PWM2<br />
* M1SF 7, Status flag<br />
* M1FB A1, Load measurment<br />
<br />
* M2IN1 11, Step or PWM1<br />
* M2IN2 3, Direction or PWM2<br />
* M2SF 10, Status flag<br />
* M2FB A0, Load measurment<br />
<br />
* MOTOR_EN 8, Enable/Disable motors<br />
<br />
* SW1 9, Endstop for axis 1<br />
* SW2 4, Endstop for axis 2<br />
<br />
* RS485_DIR 2, RS485 Half Duplex direction pin<br />
<br />
* SDA_PIN 3, Data I2C pin<br />
* SCL_PIN 4, Clock I2C pin<br />
<br />
* PIN12 12, Digital output pin<br />
* PIN13 13, Digital output pin<br />
* A2 A2, Analog input pin<br />
* A3 A3, Analog input pin<br />
<br />
<br clear="all"/><br />
<br />
=== Pre-Flight Check ===<br />
Need to add testing procedure here.<br />
<br />
How do you align the rotator?<br />
<br />
<br clear="all"/><br />
<br />
== Rotator Controller v1 ==<br />
<br />
<br clear="all"/></div>Gharryhhttps://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller&diff=1953SatNOGS Rotator Controller2018-02-17T17:02:39Z<p>Gharryh: /* Micro controller */</p>
<hr />
<div>{{Template:Development<br />
|Name= SatNOGS Rotator Controller<br />
|image= Rotator controller v2.jpg<br />
|type= Rotator Controller for SatNOGS rotator.<br />
|cost= ?<br />
|status= Working<br />
|latest-release-name= v2<br />
|latest-release= v2<br />
|source-repo= https://github.com/satnogs/satnogs-rotator-controller SatNOGS Rotator Controller<br />
|documentation= https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller SatNOGS wiki<br />
}}<br />
<br />
== Intro ==<br />
SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator.<br />
Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.<br />
<br />
== Rotator Controller v2 ==<br />
<gallery><br />
Schematic.png<br />
Pcb.png<br />
</gallery><br />
<br />
The PCB are tested in this [https://network.satnogs.org/stations/9/ ground station]. <br />
<br />
=== Features ===<br />
* It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.<br />
* Main micro-controller is [https://store.arduino.cc/arduino-pro-mini Arduino pro-mini] dev-board with ATmega328p.<br />
* The modular design includes plug-in either [https://www.pololu.com/product/2133 DRV8825]/[https://www.pololu.com/product/1182 A4988] or [https://www.pololu.com/product/1213/resources DC motor drivers] (MC33926).<br />
* The power supply in embed in the same board in contrast with previous version.<br />
* Filter in power supply of micro controller.<br />
* It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.<br />
* A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-<s>temperature</s>heating.<br />
* More dev-pins to connect other peripherals like IMU, LCD display.<br />
* Pins with RC-Low Pass filter for end-stops.<br />
* Default communication interface is RS-485 (WIP) but it can <s>be</s> also be used as a UART.<br />
* Avoid connection with GNDD directly with motor GND use keep out area.<br />
* Electrolytic capacitor and TVS-diode in PSU input<br />
<br />
=== Build sequence ===<br />
* Make sure you have a [[SatNOGS Rotator v3|mechanical assembly]] of the rotator constructed and ready<br />
* Buy the PCB. [https://oshpark.com OshPark]([https://oshpark.com/shared_projects/8eKNZnFG Board]) or [http://dirtypcbs.com DirtyPCBs.com] have been used in the past with good results.<br />
* Assemble the PCB, by soldering the components<br />
* Burn the firmware<br />
* Using the wiring diagram, connect the controller to the Rotator<br />
* You are ready! Proceed with testing<br />
<br />
<br />
==== Micro controller ====<br />
{|<br />
[[File:Uc.png|thumb|320x240px|Microcontroller]]<br />
|<br />
[[File:Uc_orientation.png|thumb|320x240px|Microcontroller Orientation]]<br />
|<br />
[[File:I2c_pullup.png|thumb|320x240px|I2C pull-up resistors|left]]<br />
|}<br />
<br clear="all"/><br />
<br />
==== Motor Specification ====<br />
Maximum specification<br />
* rotation speed: ~1200(200RPM) deg/s (after 1.8*30 = 54 gear reduction ~20deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 1.2Nm (after 1.8*30 = 54 gear reduction 64.5Nm)<br />
<br />
Minimum specification<br />
* rotation speed: ~360(60RPM) deg/s (after 1.8*30 = 54 gear reduction ~6.5deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 0.48Nm (after 1.8*30 = 54 gear reduction 25.92Nm)<br />
<br />
You can design an adapter, to mount any motor to motor mount, like [https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator/blob/master/rotator_parts/motor_mount_flange.fcstd dc motor flange].<br />
This is the [https://grobotronics.com/stepper-motor-mount-nema-17.html motor mount].<br />
<br />
The DC motor that we use is [https://www.pololu.com/product/1104 50:1 Metal Gearmotor 37Dx54L mm], <br />
* Size: 37D x 54L mm<br />
* Weight: 195 g<br />
* Shaft diameter: 6 mm<br />
* Free-run speed @ 12V: 200 rpm<br />
* Free-run current @ 12V: 300 mA<br />
* Stall current @ 12V: 5000 mA<br />
* Stall torque @ 12V: 1.2Nm<br />
<br />
The stepper motor that we use is [https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html Nema 17 Bipolar 59Ncm], <br />
* Size: 42 x 48 mm<br />
* Weight: 390 g<br />
* Shaft diameter: 5 mm<br />
* Step Angle: 1.8 deg <br />
* Nominal speed @ 12V: 720deg/s<br />
* Rated Current/phase: 2.0A<br />
* Stall torque @ 12V: 0.59Nm<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Drivers ====<br />
===== Stepper motor driver =====<br />
[[File:Stepper_2.png|thumb|320x240px|Stepper motor driver]]<br />
[[File:Stepper_1.png|thumb|320x240px|Jumpers]]<br />
[[File:Stepper_orientation.jpg|thumb|320x240px|Orientation]]<br />
<br />
For the stepper motor driver 2 options are tested, [https://www.pololu.com/product/2133 DRV8825] and [https://www.pololu.com/product/1182 A4988].<br />
For both options it is necessary to solder:<br />
* 2 electrolytic capacitors C3, C4 100uF<br />
* 4 single 0.1" male connectors for U3, U4<br />
* 2 fixed terminal blocks, Phoenix 1985467<br />
* 6 jumpers to adjust the micro-step, '''default option is Full Step'''<br />
* '''Not''' solder 2 resistors 100k, R4, R7<br />
<br />
Be careful:<br />
* [http://reprap.org/wiki/Pololu_stepper_driver_board adjust the current (current limiting) for stepper motors] <br />
* add a heat-sink.<br />
* plug the stepper motor drivers<br />
<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''JP3/JP6'''<br />
| align="center" style="background:#f0f0f0;"|'''JP2/JP5'''<br />
| align="center" style="background:#f0f0f0;"|'''JP1/JP4'''<br />
| align="center" style="background:#f0f0f0;"|'''Microstep Resolution'''<br />
|-<br />
| align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Full step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''Half step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/4 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/8 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/16 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
|}<br />
<br />
===== DC motor driver =====<br />
The DC motor controller is [https://www.pololu.com/product/1213 Dual MC33926 Motor Driver Carrier ]<br />
<br />
* Motor driver: MC33926<br />
* Motor channels: 2<br />
* Minimum operating voltage: 5V<br />
* Maximum operating voltage: 28V<br />
* Operating voltage: 12V<br />
* Continuous output current per channel: 2.5A<br />
* Current sense: 0.525 V/A<br />
* Maximum PWM frequency: 20 kHz<br />
* Operating PWM frequency: 3921.5Hz (~4kHz)<br />
* Minimum logic voltage: 2.5V<br />
* Operating logic voltage: 5V<br />
* Maximum logic voltage: 5.5V<br />
<br clear="all"/><br />
<br />
==== Communication ====<br />
===== ''UART'' =====<br />
[[File:Jumper.png|thumb|320x240px|UART Jumpers]]<br />
[[File:Rs 485.png|thumb|320x240px|Pin Header]]<br />
<br />
To use UART:<br />
* solder JP7 and JP8<br />
* solder pin header 0.1" female connector<br />
* not solder C1, U2, R18, R9, R8, R1, D3<br />
* A is TX and B is RX<br />
<br />
===== ''RS-485'' =====<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Power Supply ====<br />
[[File:Psu.png|thumb|320x240px|Power Supply]]<br />
<br />
Recommended power supply for rotator controller is: 48V @ 1A DC.<br />
A good choice is [https://gr.mouser.com/ProductDetail/709-LRS50-48 MEAN WELL LRS-50-48]<br />
<br />
The switching power supply could get as input voltage, 19-60V DC.<br />
In different input voltages, must be change the components like<br />
D4 and F1.<br />
<br />
<br />
<br clear="all"/><br />
<br />
==== Endstops ====<br />
* Mechanical Endstops<br />
<br />
[[File:Endstop.jpg|thumb|320x240px|Endstop]]<br />
<br />
<br clear="all"/><br />
<br />
==== Encoders ====<br />
For stepper motor setup is optional (AS5601 encoder).<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Wiring ====<br />
<br />
[[File:Tmp_wiring.jpg|thumb|center|800x420px|alt=|Temporary wiring]]<br />
<br />
<br clear="all"/><br />
<br />
==== Rotator Controller enclosure - Placement ====<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
=== Firmware and Pin Assignments ===<br />
<br />
===== Firmware =====<br />
<br />
[https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware More info in gitlab repository]<br />
[https://github.com/ph4as/dc_pid_control For DC motors]<br />
<br />
===== Pins Configuration =====<br />
* M1IN1 6, Step or PWM1<br />
* M1IN2 5, Direction or PWM2<br />
* M1SF 7, Status flag<br />
* M1FB A1, Load measurment<br />
<br />
* M2IN1 11, Step or PWM1<br />
* M2IN2 3, Direction or PWM2<br />
* M2SF 10, Status flag<br />
* M2FB A0, Load measurment<br />
<br />
* MOTOR_EN 8, Enable/Disable motors<br />
<br />
* SW1 9, Endstop for axis 1<br />
* SW2 4, Endstop for axis 2<br />
<br />
* RS485_DIR 2, RS485 Half Duplex direction pin<br />
<br />
* SDA_PIN 3, Data I2C pin<br />
* SCL_PIN 4, Clock I2C pin<br />
<br />
* PIN12 12, Digital output pin<br />
* PIN13 13, Digital output pin<br />
* A2 A2, Analog input pin<br />
* A3 A3, Analog input pin<br />
<br />
<br clear="all"/><br />
<br />
=== Pre-Flight Check ===<br />
Need to add testing procedure here.<br />
<br />
How do you align the rotator?<br />
<br />
<br clear="all"/><br />
<br />
== Rotator Controller v1 ==<br />
<br />
<br clear="all"/></div>Gharryhhttps://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller&diff=1952SatNOGS Rotator Controller2018-02-17T16:44:26Z<p>Gharryh: /* Micro controller */ rearange some pictures</p>
<hr />
<div>{{Template:Development<br />
|Name= SatNOGS Rotator Controller<br />
|image= Rotator controller v2.jpg<br />
|type= Rotator Controller for SatNOGS rotator.<br />
|cost= ?<br />
|status= Working<br />
|latest-release-name= v2<br />
|latest-release= v2<br />
|source-repo= https://github.com/satnogs/satnogs-rotator-controller SatNOGS Rotator Controller<br />
|documentation= https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller SatNOGS wiki<br />
}}<br />
<br />
== Intro ==<br />
SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator.<br />
Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.<br />
<br />
== Rotator Controller v2 ==<br />
<gallery><br />
Schematic.png<br />
Pcb.png<br />
</gallery><br />
<br />
The PCB are tested in this [https://network.satnogs.org/stations/9/ ground station]. <br />
<br />
=== Features ===<br />
* It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.<br />
* Main micro-controller is [https://store.arduino.cc/arduino-pro-mini Arduino pro-mini] dev-board with ATmega328p.<br />
* The modular design includes plug-in either [https://www.pololu.com/product/2133 DRV8825]/[https://www.pololu.com/product/1182 A4988] or [https://www.pololu.com/product/1213/resources DC motor drivers] (MC33926).<br />
* The power supply in embed in the same board in contrast with previous version.<br />
* Filter in power supply of micro controller.<br />
* It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.<br />
* A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-<s>temperature</s>heating.<br />
* More dev-pins to connect other peripherals like IMU, LCD display.<br />
* Pins with RC-Low Pass filter for end-stops.<br />
* Default communication interface is RS-485 (WIP) but it can <s>be</s> also be used as a UART.<br />
* Avoid connection with GNDD directly with motor GND use keep out area.<br />
* Electrolytic capacitor and TVS-diode in PSU input<br />
<br />
=== Build sequence ===<br />
* Make sure you have a [[SatNOGS Rotator v3|mechanical assembly]] of the rotator constructed and ready<br />
* Buy the PCB. [https://oshpark.com OshPark]([https://oshpark.com/shared_projects/8eKNZnFG Board]) or [http://dirtypcbs.com DirtyPCBs.com] have been used in the past with good results.<br />
* Assemble the PCB, by soldering the components<br />
* Burn the firmware<br />
* Using the wiring diagram, connect the controller to the Rotator<br />
* You are ready! Proceed with testing<br />
<br />
<br />
==== Micro controller ====<br />
[[File:Uc.png|thumb|320x240px|Microcontroller|left]]<br />
[[File:Uc_orientation.png|thumb|320x240px|Microcontroller Orientation|center]]<br />
[[File:I2c_pullup.png|thumb|320x240px|I2C pull-up resistors|right]]<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Specification ====<br />
Maximum specification<br />
* rotation speed: ~1200(200RPM) deg/s (after 1.8*30 = 54 gear reduction ~20deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 1.2Nm (after 1.8*30 = 54 gear reduction 64.5Nm)<br />
<br />
Minimum specification<br />
* rotation speed: ~360(60RPM) deg/s (after 1.8*30 = 54 gear reduction ~6.5deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 0.48Nm (after 1.8*30 = 54 gear reduction 25.92Nm)<br />
<br />
You can design an adapter, to mount any motor to motor mount, like [https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator/blob/master/rotator_parts/motor_mount_flange.fcstd dc motor flange].<br />
This is the [https://grobotronics.com/stepper-motor-mount-nema-17.html motor mount].<br />
<br />
The DC motor that we use is [https://www.pololu.com/product/1104 50:1 Metal Gearmotor 37Dx54L mm], <br />
* Size: 37D x 54L mm<br />
* Weight: 195 g<br />
* Shaft diameter: 6 mm<br />
* Free-run speed @ 12V: 200 rpm<br />
* Free-run current @ 12V: 300 mA<br />
* Stall current @ 12V: 5000 mA<br />
* Stall torque @ 12V: 1.2Nm<br />
<br />
The stepper motor that we use is [https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html Nema 17 Bipolar 59Ncm], <br />
* Size: 42 x 48 mm<br />
* Weight: 390 g<br />
* Shaft diameter: 5 mm<br />
* Step Angle: 1.8 deg <br />
* Nominal speed @ 12V: 720deg/s<br />
* Rated Current/phase: 2.0A<br />
* Stall torque @ 12V: 0.59Nm<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Drivers ====<br />
===== Stepper motor driver =====<br />
[[File:Stepper_2.png|thumb|320x240px|Stepper motor driver]]<br />
[[File:Stepper_1.png|thumb|320x240px|Jumpers]]<br />
[[File:Stepper_orientation.jpg|thumb|320x240px|Orientation]]<br />
<br />
For the stepper motor driver 2 options are tested, [https://www.pololu.com/product/2133 DRV8825] and [https://www.pololu.com/product/1182 A4988].<br />
For both options it is necessary to solder:<br />
* 2 electrolytic capacitors C3, C4 100uF<br />
* 4 single 0.1" male connectors for U3, U4<br />
* 2 fixed terminal blocks, Phoenix 1985467<br />
* 6 jumpers to adjust the micro-step, '''default option is Full Step'''<br />
* '''Not''' solder 2 resistors 100k, R4, R7<br />
<br />
Be careful:<br />
* [http://reprap.org/wiki/Pololu_stepper_driver_board adjust the current (current limiting) for stepper motors] <br />
* add a heat-sink.<br />
* plug the stepper motor drivers<br />
<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''JP3/JP6'''<br />
| align="center" style="background:#f0f0f0;"|'''JP2/JP5'''<br />
| align="center" style="background:#f0f0f0;"|'''JP1/JP4'''<br />
| align="center" style="background:#f0f0f0;"|'''Microstep Resolution'''<br />
|-<br />
| align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Full step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''Half step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/4 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/8 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/16 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
|}<br />
<br />
===== DC motor driver =====<br />
The DC motor controller is [https://www.pololu.com/product/1213 Dual MC33926 Motor Driver Carrier ]<br />
<br />
* Motor driver: MC33926<br />
* Motor channels: 2<br />
* Minimum operating voltage: 5V<br />
* Maximum operating voltage: 28V<br />
* Operating voltage: 12V<br />
* Continuous output current per channel: 2.5A<br />
* Current sense: 0.525 V/A<br />
* Maximum PWM frequency: 20 kHz<br />
* Operating PWM frequency: 3921.5Hz (~4kHz)<br />
* Minimum logic voltage: 2.5V<br />
* Operating logic voltage: 5V<br />
* Maximum logic voltage: 5.5V<br />
<br clear="all"/><br />
<br />
==== Communication ====<br />
===== ''UART'' =====<br />
[[File:Jumper.png|thumb|320x240px|UART Jumpers]]<br />
[[File:Rs 485.png|thumb|320x240px|Pin Header]]<br />
<br />
To use UART:<br />
* solder JP7 and JP8<br />
* solder pin header 0.1" female connector<br />
* not solder C1, U2, R18, R9, R8, R1, D3<br />
* A is TX and B is RX<br />
<br />
===== ''RS-485'' =====<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Power Supply ====<br />
[[File:Psu.png|thumb|320x240px|Power Supply]]<br />
<br />
Recommended power supply for rotator controller is: 48V @ 1A DC.<br />
A good choice is [https://gr.mouser.com/ProductDetail/709-LRS50-48 MEAN WELL LRS-50-48]<br />
<br />
The switching power supply could get as input voltage, 19-60V DC.<br />
In different input voltages, must be change the components like<br />
D4 and F1.<br />
<br />
<br />
<br clear="all"/><br />
<br />
==== Endstops ====<br />
* Mechanical Endstops<br />
<br />
[[File:Endstop.jpg|thumb|320x240px|Endstop]]<br />
<br />
<br clear="all"/><br />
<br />
==== Encoders ====<br />
For stepper motor setup is optional (AS5601 encoder).<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Wiring ====<br />
<br />
[[File:Tmp_wiring.jpg|thumb|center|800x420px|alt=|Temporary wiring]]<br />
<br />
<br clear="all"/><br />
<br />
==== Rotator Controller enclosure - Placement ====<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
=== Firmware and Pin Assignments ===<br />
<br />
===== Firmware =====<br />
<br />
[https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware More info in gitlab repository]<br />
[https://github.com/ph4as/dc_pid_control For DC motors]<br />
<br />
===== Pins Configuration =====<br />
* M1IN1 6, Step or PWM1<br />
* M1IN2 5, Direction or PWM2<br />
* M1SF 7, Status flag<br />
* M1FB A1, Load measurment<br />
<br />
* M2IN1 11, Step or PWM1<br />
* M2IN2 3, Direction or PWM2<br />
* M2SF 10, Status flag<br />
* M2FB A0, Load measurment<br />
<br />
* MOTOR_EN 8, Enable/Disable motors<br />
<br />
* SW1 9, Endstop for axis 1<br />
* SW2 4, Endstop for axis 2<br />
<br />
* RS485_DIR 2, RS485 Half Duplex direction pin<br />
<br />
* SDA_PIN 3, Data I2C pin<br />
* SCL_PIN 4, Clock I2C pin<br />
<br />
* PIN12 12, Digital output pin<br />
* PIN13 13, Digital output pin<br />
* A2 A2, Analog input pin<br />
* A3 A3, Analog input pin<br />
<br />
<br clear="all"/><br />
<br />
=== Pre-Flight Check ===<br />
Need to add testing procedure here.<br />
<br />
How do you align the rotator?<br />
<br />
<br clear="all"/><br />
<br />
== Rotator Controller v1 ==<br />
<br />
<br clear="all"/></div>Gharryhhttps://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller&diff=1951SatNOGS Rotator Controller2018-02-17T16:41:42Z<p>Gharryh: /* Build sequence */ added link to board</p>
<hr />
<div>{{Template:Development<br />
|Name= SatNOGS Rotator Controller<br />
|image= Rotator controller v2.jpg<br />
|type= Rotator Controller for SatNOGS rotator.<br />
|cost= ?<br />
|status= Working<br />
|latest-release-name= v2<br />
|latest-release= v2<br />
|source-repo= https://github.com/satnogs/satnogs-rotator-controller SatNOGS Rotator Controller<br />
|documentation= https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller SatNOGS wiki<br />
}}<br />
<br />
== Intro ==<br />
SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator.<br />
Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.<br />
<br />
== Rotator Controller v2 ==<br />
<gallery><br />
Schematic.png<br />
Pcb.png<br />
</gallery><br />
<br />
The PCB are tested in this [https://network.satnogs.org/stations/9/ ground station]. <br />
<br />
=== Features ===<br />
* It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.<br />
* Main micro-controller is [https://store.arduino.cc/arduino-pro-mini Arduino pro-mini] dev-board with ATmega328p.<br />
* The modular design includes plug-in either [https://www.pololu.com/product/2133 DRV8825]/[https://www.pololu.com/product/1182 A4988] or [https://www.pololu.com/product/1213/resources DC motor drivers] (MC33926).<br />
* The power supply in embed in the same board in contrast with previous version.<br />
* Filter in power supply of micro controller.<br />
* It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.<br />
* A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-<s>temperature</s>heating.<br />
* More dev-pins to connect other peripherals like IMU, LCD display.<br />
* Pins with RC-Low Pass filter for end-stops.<br />
* Default communication interface is RS-485 (WIP) but it can <s>be</s> also be used as a UART.<br />
* Avoid connection with GNDD directly with motor GND use keep out area.<br />
* Electrolytic capacitor and TVS-diode in PSU input<br />
<br />
=== Build sequence ===<br />
* Make sure you have a [[SatNOGS Rotator v3|mechanical assembly]] of the rotator constructed and ready<br />
* Buy the PCB. [https://oshpark.com OshPark]([https://oshpark.com/shared_projects/8eKNZnFG Board]) or [http://dirtypcbs.com DirtyPCBs.com] have been used in the past with good results.<br />
* Assemble the PCB, by soldering the components<br />
* Burn the firmware<br />
* Using the wiring diagram, connect the controller to the Rotator<br />
* You are ready! Proceed with testing<br />
<br />
<br />
==== Micro controller ====<br />
[[File:Uc.png|thumb|320x240px|Microcontroller]]<br />
[[File:Uc_orientation.png|thumb|320x240px|Microcontroller Orientation]]<br />
[[File:I2c_pullup.png|thumb|320x240px|I2C pull-up resistors]]<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Specification ====<br />
Maximum specification<br />
* rotation speed: ~1200(200RPM) deg/s (after 1.8*30 = 54 gear reduction ~20deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 1.2Nm (after 1.8*30 = 54 gear reduction 64.5Nm)<br />
<br />
Minimum specification<br />
* rotation speed: ~360(60RPM) deg/s (after 1.8*30 = 54 gear reduction ~6.5deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 0.48Nm (after 1.8*30 = 54 gear reduction 25.92Nm)<br />
<br />
You can design an adapter, to mount any motor to motor mount, like [https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator/blob/master/rotator_parts/motor_mount_flange.fcstd dc motor flange].<br />
This is the [https://grobotronics.com/stepper-motor-mount-nema-17.html motor mount].<br />
<br />
The DC motor that we use is [https://www.pololu.com/product/1104 50:1 Metal Gearmotor 37Dx54L mm], <br />
* Size: 37D x 54L mm<br />
* Weight: 195 g<br />
* Shaft diameter: 6 mm<br />
* Free-run speed @ 12V: 200 rpm<br />
* Free-run current @ 12V: 300 mA<br />
* Stall current @ 12V: 5000 mA<br />
* Stall torque @ 12V: 1.2Nm<br />
<br />
The stepper motor that we use is [https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html Nema 17 Bipolar 59Ncm], <br />
* Size: 42 x 48 mm<br />
* Weight: 390 g<br />
* Shaft diameter: 5 mm<br />
* Step Angle: 1.8 deg <br />
* Nominal speed @ 12V: 720deg/s<br />
* Rated Current/phase: 2.0A<br />
* Stall torque @ 12V: 0.59Nm<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Drivers ====<br />
===== Stepper motor driver =====<br />
[[File:Stepper_2.png|thumb|320x240px|Stepper motor driver]]<br />
[[File:Stepper_1.png|thumb|320x240px|Jumpers]]<br />
[[File:Stepper_orientation.jpg|thumb|320x240px|Orientation]]<br />
<br />
For the stepper motor driver 2 options are tested, [https://www.pololu.com/product/2133 DRV8825] and [https://www.pololu.com/product/1182 A4988].<br />
For both options it is necessary to solder:<br />
* 2 electrolytic capacitors C3, C4 100uF<br />
* 4 single 0.1" male connectors for U3, U4<br />
* 2 fixed terminal blocks, Phoenix 1985467<br />
* 6 jumpers to adjust the micro-step, '''default option is Full Step'''<br />
* '''Not''' solder 2 resistors 100k, R4, R7<br />
<br />
Be careful:<br />
* [http://reprap.org/wiki/Pololu_stepper_driver_board adjust the current (current limiting) for stepper motors] <br />
* add a heat-sink.<br />
* plug the stepper motor drivers<br />
<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''JP3/JP6'''<br />
| align="center" style="background:#f0f0f0;"|'''JP2/JP5'''<br />
| align="center" style="background:#f0f0f0;"|'''JP1/JP4'''<br />
| align="center" style="background:#f0f0f0;"|'''Microstep Resolution'''<br />
|-<br />
| align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Full step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''Half step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/4 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/8 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/16 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
|}<br />
<br />
===== DC motor driver =====<br />
The DC motor controller is [https://www.pololu.com/product/1213 Dual MC33926 Motor Driver Carrier ]<br />
<br />
* Motor driver: MC33926<br />
* Motor channels: 2<br />
* Minimum operating voltage: 5V<br />
* Maximum operating voltage: 28V<br />
* Operating voltage: 12V<br />
* Continuous output current per channel: 2.5A<br />
* Current sense: 0.525 V/A<br />
* Maximum PWM frequency: 20 kHz<br />
* Operating PWM frequency: 3921.5Hz (~4kHz)<br />
* Minimum logic voltage: 2.5V<br />
* Operating logic voltage: 5V<br />
* Maximum logic voltage: 5.5V<br />
<br clear="all"/><br />
<br />
==== Communication ====<br />
===== ''UART'' =====<br />
[[File:Jumper.png|thumb|320x240px|UART Jumpers]]<br />
[[File:Rs 485.png|thumb|320x240px|Pin Header]]<br />
<br />
To use UART:<br />
* solder JP7 and JP8<br />
* solder pin header 0.1" female connector<br />
* not solder C1, U2, R18, R9, R8, R1, D3<br />
* A is TX and B is RX<br />
<br />
===== ''RS-485'' =====<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Power Supply ====<br />
[[File:Psu.png|thumb|320x240px|Power Supply]]<br />
<br />
Recommended power supply for rotator controller is: 48V @ 1A DC.<br />
A good choice is [https://gr.mouser.com/ProductDetail/709-LRS50-48 MEAN WELL LRS-50-48]<br />
<br />
The switching power supply could get as input voltage, 19-60V DC.<br />
In different input voltages, must be change the components like<br />
D4 and F1.<br />
<br />
<br />
<br clear="all"/><br />
<br />
==== Endstops ====<br />
* Mechanical Endstops<br />
<br />
[[File:Endstop.jpg|thumb|320x240px|Endstop]]<br />
<br />
<br clear="all"/><br />
<br />
==== Encoders ====<br />
For stepper motor setup is optional (AS5601 encoder).<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Wiring ====<br />
<br />
[[File:Tmp_wiring.jpg|thumb|center|800x420px|alt=|Temporary wiring]]<br />
<br />
<br clear="all"/><br />
<br />
==== Rotator Controller enclosure - Placement ====<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
=== Firmware and Pin Assignments ===<br />
<br />
===== Firmware =====<br />
<br />
[https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware More info in gitlab repository]<br />
[https://github.com/ph4as/dc_pid_control For DC motors]<br />
<br />
===== Pins Configuration =====<br />
* M1IN1 6, Step or PWM1<br />
* M1IN2 5, Direction or PWM2<br />
* M1SF 7, Status flag<br />
* M1FB A1, Load measurment<br />
<br />
* M2IN1 11, Step or PWM1<br />
* M2IN2 3, Direction or PWM2<br />
* M2SF 10, Status flag<br />
* M2FB A0, Load measurment<br />
<br />
* MOTOR_EN 8, Enable/Disable motors<br />
<br />
* SW1 9, Endstop for axis 1<br />
* SW2 4, Endstop for axis 2<br />
<br />
* RS485_DIR 2, RS485 Half Duplex direction pin<br />
<br />
* SDA_PIN 3, Data I2C pin<br />
* SCL_PIN 4, Clock I2C pin<br />
<br />
* PIN12 12, Digital output pin<br />
* PIN13 13, Digital output pin<br />
* A2 A2, Analog input pin<br />
* A3 A3, Analog input pin<br />
<br />
<br clear="all"/><br />
<br />
=== Pre-Flight Check ===<br />
Need to add testing procedure here.<br />
<br />
How do you align the rotator?<br />
<br />
<br clear="all"/><br />
<br />
== Rotator Controller v1 ==<br />
<br />
<br clear="all"/></div>Gharryhhttps://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller&diff=1950SatNOGS Rotator Controller2018-02-17T16:35:59Z<p>Gharryh: /* Features */ some language corrections</p>
<hr />
<div>{{Template:Development<br />
|Name= SatNOGS Rotator Controller<br />
|image= Rotator controller v2.jpg<br />
|type= Rotator Controller for SatNOGS rotator.<br />
|cost= ?<br />
|status= Working<br />
|latest-release-name= v2<br />
|latest-release= v2<br />
|source-repo= https://github.com/satnogs/satnogs-rotator-controller SatNOGS Rotator Controller<br />
|documentation= https://wiki.satnogs.org/index.php?title=SatNOGS_Rotator_Controller SatNOGS wiki<br />
}}<br />
<br />
== Intro ==<br />
SatNOGS Rotator Controller refers to the set of electronics designed to operate a SatNOGS Rotator. There have been multiple iterations of the rotator controller design, but the modularity of the approach enables operations between different versions of the controller and the rotator.<br />
Since the start of 2016, the rotator controller design is able to facilitate a DC-motors or stepper-motors rotator design. We intend to keep this modularity for the electronics and firmware design to facilitate the variety of build by our community.<br />
<br />
== Rotator Controller v2 ==<br />
<gallery><br />
Schematic.png<br />
Pcb.png<br />
</gallery><br />
<br />
The PCB are tested in this [https://network.satnogs.org/stations/9/ ground station]. <br />
<br />
=== Features ===<br />
* It is designed to fit the entire electronics needed to control rotator in Euroboard 80x50 mm.<br />
* Main micro-controller is [https://store.arduino.cc/arduino-pro-mini Arduino pro-mini] dev-board with ATmega328p.<br />
* The modular design includes plug-in either [https://www.pololu.com/product/2133 DRV8825]/[https://www.pololu.com/product/1182 A4988] or [https://www.pololu.com/product/1213/resources DC motor drivers] (MC33926).<br />
* The power supply in embed in the same board in contrast with previous version.<br />
* Filter in power supply of micro controller.<br />
* It has an I2C multiplexer to connect I2C encoders AS5601 (same ID) to get position feedback for each axis.<br />
* A temperature sensor TC-74 monitoring the temperature inside the controller box in order to protect them from over-<s>temperature</s>heating.<br />
* More dev-pins to connect other peripherals like IMU, LCD display.<br />
* Pins with RC-Low Pass filter for end-stops.<br />
* Default communication interface is RS-485 (WIP) but it can <s>be</s> also be used as a UART.<br />
* Avoid connection with GNDD directly with motor GND use keep out area.<br />
* Electrolytic capacitor and TVS-diode in PSU input<br />
<br />
=== Build sequence ===<br />
* Make sure you have a [[SatNOGS Rotator v3|mechanical assembly]] of the rotator constructed and ready<br />
* Buy the PCB. [https://oshpark.com OshPark] or [http://dirtypcbs.com DirtyPCBs.com] have been used in the past with good results.<br />
* Assemble the PCB, by soldering the components<br />
* Burn the firmware<br />
* Using the wiring diagram, connect the controller to the Rotator<br />
* You are ready! Proceed with testing<br />
<br />
<br />
==== Micro controller ====<br />
[[File:Uc.png|thumb|320x240px|Microcontroller]]<br />
[[File:Uc_orientation.png|thumb|320x240px|Microcontroller Orientation]]<br />
[[File:I2c_pullup.png|thumb|320x240px|I2C pull-up resistors]]<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Specification ====<br />
Maximum specification<br />
* rotation speed: ~1200(200RPM) deg/s (after 1.8*30 = 54 gear reduction ~20deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 1.2Nm (after 1.8*30 = 54 gear reduction 64.5Nm)<br />
<br />
Minimum specification<br />
* rotation speed: ~360(60RPM) deg/s (after 1.8*30 = 54 gear reduction ~6.5deg/s and we want 5deg/s according to [https://community.libre.space/t/satnogs-rotator-version-3/226 v3 rotator specification]<br />
* stall torque: 0.48Nm (after 1.8*30 = 54 gear reduction 25.92Nm)<br />
<br />
You can design an adapter, to mount any motor to motor mount, like [https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator/blob/master/rotator_parts/motor_mount_flange.fcstd dc motor flange].<br />
This is the [https://grobotronics.com/stepper-motor-mount-nema-17.html motor mount].<br />
<br />
The DC motor that we use is [https://www.pololu.com/product/1104 50:1 Metal Gearmotor 37Dx54L mm], <br />
* Size: 37D x 54L mm<br />
* Weight: 195 g<br />
* Shaft diameter: 6 mm<br />
* Free-run speed @ 12V: 200 rpm<br />
* Free-run current @ 12V: 300 mA<br />
* Stall current @ 12V: 5000 mA<br />
* Stall torque @ 12V: 1.2Nm<br />
<br />
The stepper motor that we use is [https://www.omc-stepperonline.com/hybrid-stepper-motor/nema-17-bipolar-59ncm-84ozin-2a-42x48mm-4wires-w-1m-cable-and-connector-17hs19-2004s1.html Nema 17 Bipolar 59Ncm], <br />
* Size: 42 x 48 mm<br />
* Weight: 390 g<br />
* Shaft diameter: 5 mm<br />
* Step Angle: 1.8 deg <br />
* Nominal speed @ 12V: 720deg/s<br />
* Rated Current/phase: 2.0A<br />
* Stall torque @ 12V: 0.59Nm<br />
<br />
<br clear="all"/><br />
<br />
==== Motor Drivers ====<br />
===== Stepper motor driver =====<br />
[[File:Stepper_2.png|thumb|320x240px|Stepper motor driver]]<br />
[[File:Stepper_1.png|thumb|320x240px|Jumpers]]<br />
[[File:Stepper_orientation.jpg|thumb|320x240px|Orientation]]<br />
<br />
For the stepper motor driver 2 options are tested, [https://www.pololu.com/product/2133 DRV8825] and [https://www.pololu.com/product/1182 A4988].<br />
For both options it is necessary to solder:<br />
* 2 electrolytic capacitors C3, C4 100uF<br />
* 4 single 0.1" male connectors for U3, U4<br />
* 2 fixed terminal blocks, Phoenix 1985467<br />
* 6 jumpers to adjust the micro-step, '''default option is Full Step'''<br />
* '''Not''' solder 2 resistors 100k, R4, R7<br />
<br />
Be careful:<br />
* [http://reprap.org/wiki/Pololu_stepper_driver_board adjust the current (current limiting) for stepper motors] <br />
* add a heat-sink.<br />
* plug the stepper motor drivers<br />
<br />
{| {{table}}<br />
| align="center" style="background:#f0f0f0;"|'''JP3/JP6'''<br />
| align="center" style="background:#f0f0f0;"|'''JP2/JP5'''<br />
| align="center" style="background:#f0f0f0;"|'''JP1/JP4'''<br />
| align="center" style="background:#f0f0f0;"|'''Microstep Resolution'''<br />
|-<br />
| align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Low''' || align="center" style="background:#f0f000;"|'''Full step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''Half step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/4 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''1/8 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/16 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''Low''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
| align="center"|'''High''' || align="center"|'''High''' || align="center"|'''High''' || align="center"|'''1/32 step'''<br />
|-<br />
|}<br />
<br />
===== DC motor driver =====<br />
The DC motor controller is [https://www.pololu.com/product/1213 Dual MC33926 Motor Driver Carrier ]<br />
<br />
* Motor driver: MC33926<br />
* Motor channels: 2<br />
* Minimum operating voltage: 5V<br />
* Maximum operating voltage: 28V<br />
* Operating voltage: 12V<br />
* Continuous output current per channel: 2.5A<br />
* Current sense: 0.525 V/A<br />
* Maximum PWM frequency: 20 kHz<br />
* Operating PWM frequency: 3921.5Hz (~4kHz)<br />
* Minimum logic voltage: 2.5V<br />
* Operating logic voltage: 5V<br />
* Maximum logic voltage: 5.5V<br />
<br clear="all"/><br />
<br />
==== Communication ====<br />
===== ''UART'' =====<br />
[[File:Jumper.png|thumb|320x240px|UART Jumpers]]<br />
[[File:Rs 485.png|thumb|320x240px|Pin Header]]<br />
<br />
To use UART:<br />
* solder JP7 and JP8<br />
* solder pin header 0.1" female connector<br />
* not solder C1, U2, R18, R9, R8, R1, D3<br />
* A is TX and B is RX<br />
<br />
===== ''RS-485'' =====<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Power Supply ====<br />
[[File:Psu.png|thumb|320x240px|Power Supply]]<br />
<br />
Recommended power supply for rotator controller is: 48V @ 1A DC.<br />
A good choice is [https://gr.mouser.com/ProductDetail/709-LRS50-48 MEAN WELL LRS-50-48]<br />
<br />
The switching power supply could get as input voltage, 19-60V DC.<br />
In different input voltages, must be change the components like<br />
D4 and F1.<br />
<br />
<br />
<br clear="all"/><br />
<br />
==== Endstops ====<br />
* Mechanical Endstops<br />
<br />
[[File:Endstop.jpg|thumb|320x240px|Endstop]]<br />
<br />
<br clear="all"/><br />
<br />
==== Encoders ====<br />
For stepper motor setup is optional (AS5601 encoder).<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
==== Wiring ====<br />
<br />
[[File:Tmp_wiring.jpg|thumb|center|800x420px|alt=|Temporary wiring]]<br />
<br />
<br clear="all"/><br />
<br />
==== Rotator Controller enclosure - Placement ====<br />
<br />
WIP<br />
<br />
<br clear="all"/><br />
<br />
=== Firmware and Pin Assignments ===<br />
<br />
===== Firmware =====<br />
<br />
[https://gitlab.com/librespacefoundation/satnogs/satnogs-rotator-firmware More info in gitlab repository]<br />
[https://github.com/ph4as/dc_pid_control For DC motors]<br />
<br />
===== Pins Configuration =====<br />
* M1IN1 6, Step or PWM1<br />
* M1IN2 5, Direction or PWM2<br />
* M1SF 7, Status flag<br />
* M1FB A1, Load measurment<br />
<br />
* M2IN1 11, Step or PWM1<br />
* M2IN2 3, Direction or PWM2<br />
* M2SF 10, Status flag<br />
* M2FB A0, Load measurment<br />
<br />
* MOTOR_EN 8, Enable/Disable motors<br />
<br />
* SW1 9, Endstop for axis 1<br />
* SW2 4, Endstop for axis 2<br />
<br />
* RS485_DIR 2, RS485 Half Duplex direction pin<br />
<br />
* SDA_PIN 3, Data I2C pin<br />
* SCL_PIN 4, Clock I2C pin<br />
<br />
* PIN12 12, Digital output pin<br />
* PIN13 13, Digital output pin<br />
* A2 A2, Analog input pin<br />
* A3 A3, Analog input pin<br />
<br />
<br clear="all"/><br />
<br />
=== Pre-Flight Check ===<br />
Need to add testing procedure here.<br />
<br />
How do you align the rotator?<br />
<br />
<br clear="all"/><br />
<br />
== Rotator Controller v1 ==<br />
<br />
<br clear="all"/></div>Gharryhhttps://wiki.satnogs.org/index.php?title=Main_Page&diff=1921Main Page2018-01-03T19:50:13Z<p>Gharryh: Double sentence removed; (The image below explains the system.)</p>
<hr />
<div>__NOTOC__<br />
<p>SatNOGS is an integral part of the [https://libre.space Libre Space Foundation]. The project aims to build a global network of satellite ground stations. Designed as an open source participatory project which is straightforward to build using commonly available parts and some 3D printed elements. A ground station is built to interact with a website that holds key satellite information. The web interface allows a user to schedule a satellite observation of any of the networked ground stations.</p><br />
<p>Here you can find more information on how to get started with SatNOGS, building and operating a satellite ground station and joining the SatNOGS Network.</p><br />
<p>A SatNOGS ground station can be made in a variety of ways. The reference design uses a Raspberry Pi and RTL-SDR dongle with either stationary antennas or either a SatNOGS rotator or a commercial amateur radio rotator. There is provision to use amateur radio transceivers or alternative SDR technology. The image below explains the system.</p><br />
<p>[[File:Satnogs_imagemap.png|center]]</p><br />
<div style="border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;"><br />
__NOTOC__<br />
<h2>What is SatNOGS</h2><br />
<p>[[Intro|Intro to SatNOGS]]</p><br />
<p>[[Ground Stations|Intro to ground stations]]</p><br />
<p>[[Glossary]]</p><br />
</div><br />
<div style="border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;"><br />
<h2>Build</h2><br />
<p>[[Get_Started|Learn how to get started]]</p><br />
<p>[[Build|Build a ground station]]</p><br />
<p>[[Rotators|Rotators]]</p><br />
<p>[[Antennas|Antennas]]</p><br />
<p>[[Radio|Signal Reception]]</p><br />
</div><br />
<div style="border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;"><br />
<h2>Operate</h2><br />
<p>[[Development Environment]]</p><br />
<p>[[Production Environment]]</p><br />
<p>[[Satnogs DB]]</p><br />
<p>&nbsp;</p><br />
</div><br />
<div style="border-radius: 3px; width: 16%; height: 200px; background-color: #f6f6f6; float: left; display: block; margin: 1.5%; border: 1px solid #A7D7F9; text-align: center; padding: 2.5%; padding-top: 0px;"><br />
<h2>Contribute</h2><br />
<p>[[Software contribution]]</p><br />
<p>[[Provide documentation]]</p><br />
<p>[[Satnogs DB]]</p><br />
<p>[[Troubleshooting|Troubleshooting]]</p><br />
<p>[[Get_In_Touch|Get in touch and ask for help]]</p><br />
<p>&nbsp;</p><br />
</div></div>Gharryh