Download PDF
      SAMOVAR                                  
×
Menu

Fraction Distribution

Samovar 7.00: the corrections for the 11 servo positions are set in the "Servo corrections (11 numbers)" («Поправки сервопривода (11 чисел)») field on the "Equipment" («Оборудование») tab of the configurator; it writes them to the servoDelta array in the file Samovar_ini.h.
 
 
 
Samovar can divide the whole run into 11 parts, according to the take-off program you have made.
 
Note.
If you do not need the division into parts, or you will change the containers yourself, this unit is not required. Samovar works without it.
 
To build it you need a servo of the kind used in Arduino projects.
 

Servo  SG90
(Rc Mini Micro 9g 1.6 kg servo SG90  180° For RC 250 450 for Arduino DIY )

Warning!
Samovar uses a servo with a 180° rotation angle; any other will not work correctly (servos can have a rotation angle of 90°, 180°, 360° or continuous rotation).
 Choose the servo carefully before buying. If in doubt, it is better to pass and buy from another seller who clearly states the rotation angle.
 
Wire pinout: red — +5 V, brown — GND, yellow or orange — control signal. The signal input is connected to GPIO25 on ESP32 DevKit or to GPIO10 on ESP32-S3.
 
To check the servo rotation angle you can use a special sketch.  Put the sketch in the same directory as the Samovar files (... Documents\Arduino\...)  and install it on the ESP32 instead of  Samovar. See the User Manual for how to install a sketch.
After the sketch is installed on the ESP32, the servo should start moving from the initial  position to the extreme one and back, in a loop. After checking the servo, you will need to upload the Samovar sketch to the ESP32 again.
 
A model of a collection table for 3D printing has been developed for the SG90 servo. The model files  are in the 3D directory, which is included in every Samovar release archive.
These are the files Samovar_plate.stl and Samovar_horn.stl.
Print with a plastic resistant to acetone and alcohol, for example PLA.
 
 
The SG90 is one of the cheapest and most popular servos. Some users have had problems with its stable operation.
It showed up as the servo struggling to reach the required position or, at some point, the rocker arm starting to "tremble". Experience shows this is related to an unfortunate placement of the product feed tube, its excessive size, stiffness or, on the contrary, floppiness.
The SG90 can be replaced with:
 
Servo MG996R ,  MG996, MG995.
 
 
 
This servo is more expensive than the previous one, but it is also more powerful (and so consumes more energy), can have either a plastic or a metal gearbox (it makes no difference for our purposes), and comes with more accessories.
Samovar uses a servo with a 180° rotation angle; any other will not work correctly.
 
Wire pinout: red — +5 V, brown, gray or black — GND, yellow or orange — control signal. The signal input is connected to GPIO25 on ESP32 DevKit or to GPIO10 on ESP32-S3.
A collection table model for 3D printing has also been developed for these servos. These are the files plate_996_servo.stl and horn_996_servo.stl. The model files  are in the 3D directory, which is in the Samovar release archive. Print with a plastic resistant to acetone and alcohol.
 
Examples of collection table builds and modifications:
 
 
 
See on the forum: post 1, post 2
 
 
Position correction
 
Every servo has its own errors and is tuned individually  to the table positions.
If the collection table is printed or made from a template, with equal distances between the funnels,  the rotation angles will need to be corrected.
The servo rotation angles are set  in the file Samovar_ini.h (see Uploading and Updating the Sketch and Sketch Setup), 
 these are the lines:
 
//Correction for the servo rotation angle.
int8_t servoDelta[11] = {0, -2, -3, -4, -3 , -2, 0, 0, 0, 0, -2};
 
 The values in the curly braces are the angle correction for each position. There are 11 in total. The receiving funnels are counted starting from position zero.  The correction values are given in degrees. Each position is corrected individually. It does not depend on the correction of neighboring positions.
 
For the correction, make a test take-off program for the  "Rectification" («Ректификация») mode
 
H;450;0.10;0;0.00;45
H;450;0.10;1;0.00;45
H;450;0.10;2;0.00;45
H;450;0.10;3;0.00;45
H;450;0.10;4;0.00;45
H;450;0.10;5;0.00;45
H;450;0.10;6;0.00;45
H;450;0.10;7;0.00;45
H;450;0.10;8;0.00;45
H;450;0.10;9;0.00;45
H;450;0.10;10;0.00;45
 
Copy this block of text and paste it into the take-off program text field on the "Program" («Программа») tab of the Samovar web interface main page, and save.
 
You can leave the rocker arm off the servo, or install it in a way that lets you remove it easily. Connect the servo and turn on Samovar. At startup Samovar puts the servo in its start position. Install the rocker arm so that it points at funnel zero.
From Samovar give the "Turn heating on" («Включить нагрев») command (the heater must be disconnected) and then the "Start take-off" («Начать отбор») command. The arm stays at funnel zero.
The "Next program" («Следующая программа») command moves the arm to the next position - funnel No. 1. If the arm position coincides with the imaginary line passing through the center of the servo's axis of rotation and the center of the receiving funnel, good. That is zero. No correction is needed. Give the "Next program" command again, and the arm moves to the next position.
If the arm has not reached the required position or has overshot it, a correction is needed. Take funnel No. 3 as an example (remember that funnel numbering starts from zero). For this funnel the correction value in the original sketch is 4 (minus 4)
 
Suppose the arm has "overshot" and stopped on the red line. Measure the length of the arc (blue arrow) between zero and the actual position.
Say it is 10 mm. 
Now you need to find the arc length for a rotation of 1 degree. Find an online  calculator . Enter the radius value (120 in this case) and set the angle = 1.
 We find that for a rotation of 1 ° the arc length is 2 mm. Our arm is 10 mm away from the required position.
10/2=5 degrees.
The arm has overshot and must be brought back, so this will be a negative value. The sketch already has - 4 (minus 4)
-4+(-5)= -9
So the rotation angle correction for funnel No. 3, which is position No. 4, is minus 9°
This is true for a particular servo and table, with funnels placed on a circle of 120 mm radius.
 
In the same way, run through all the arm positions and correct the values in the curly braces of the line
int8_t servoDelta[11] = {0, -2, -3, -9, -3 , -2, 0, 0, 0, 0, -2};
 
After the correction, upload the sketch to Samovar again, set the test take-off program and check how the arm moves between positions.
 
Making a collection table yourself
 
A collection table with fixed funnel positions.  A post on the forum. The template for making it can be downloaded there too.
 
***
A collection table that needs almost no correction of the servo rotation angle values.
 
 
The point is that the centers for drilling the holes are marked according to the actual position of the rocker arm.
Making instructions on the forum .
 
Funnels
 
       
 
 
Troubleshooting possible problems.
Assuming the servo is working