Storing Cookies (See : http://ec.europa.eu/ipg/basics/legal/cookies/index_en.htm ) help us to bring you our services at overunity.com . If you use this website and our services you declare yourself okay with using cookies .More Infos here:
https://overunity.com/5553/privacy-policy/
If you do not agree with storing cookies, please LEAVE this website now. From the 25th of May 2018, every existing user has to accept the GDPR agreement at first login. If a user is unwilling to accept the GDPR, he should email us and request to erase his account. Many thanks for your understanding

User Menu

Custom Search

Author Topic: Pierre's 170W in 1600W out Looped Very impressive Build continued & moderated  (Read 429733 times)

Slider2732

  • Full Member
  • ***
  • Posts: 119
Great to see it rotating  :)

For the 'x' question...the one to change is the one without // in front of it, x = 5.
(at 3:33 in your video)
The line at the top which says 'int x = 0;' is what's called a variable declaration. It's saying that a variable called x will be an integer. If that wasn't there it wouldn't know what x was.
When you see // it means a comment, something the program doesn't use as it's code.
Another example would be:
// Hello Luc

 

gotoluc

  • elite_member
  • Hero Member
  • ******
  • Posts: 3096
Made one change and got an error uploading to Arduino

Video: https://youtu.be/1hS1KNXARLw

pmgr

  • Full Member
  • ***
  • Posts: 184
    • Stop organ harvesting from Falun Gong practitioners
[/size]First test with magnet as rotor. Without current limitation and magnet rotor the device consumes exactly 1 Amp at 3.50 Volts.Fr. Premier test avec aimant comme rotor. Sans limitation de courant et rotor magnétique, l'appareil consomme exactement 1 ampère à 3,50 volts.
Video demo: https://youtu.be/w_z7tcq2N9E[/size]
Hi Luc, very nice demonstration.

You need to change the line that says:

x=5; //total loop delay is 20*x = 100ms. f=10Hz

You can change it to any of the the lines below:
x=1;  // x=1ms, loop delay is 20ms, results in 50Hz loop speed, or 1/3*50Hz magnet spin speed
x=2;  // x=2ms, loop delay is 40ms, results in 25Hz loop speed, or 1/3*25Hz magnet spin speed
x=3;  // x=3ms, loop delay is 60ms, results in 16.66Hz loop speed, or 1/3*16.66Hz magnet spin speed
x=4;  // x=4ms, loop delay is 80ms, results in 12.5Hz loop speed, or 1/3*12.5Hz magnet spin speed
x=5;  // x=5ms,loop delay is 100ms, results in 10Hz loop speed, or 1/3*10Hz magnet spin speed
x=10;  // x=10ms, loop delay is 200ms results in 5Hz loop speed, or 1/3*5Hz magnet spin speed
x=20;  // x=20ms, loop delay is 400ms results in 2.5Hz loop speed, or 1/3*2.5Hz magnet spin speed
x=25;  // x=25ms, loop delay is 500ms results in 2Hz loop speed, or 1/3*2Hz magnet spin speed
x=50;  // x=50ms, loop delay is 1000ms results in 1Hz loop speed, or 1/3*1Hz magnet spin speed

I note that it takes three times looping to go around the stator one time, so the magnet speed is 1/3 of the loop speed. Currently the loop speed is set (x=5) at 10Hz, so your magnet is spinning at 1/3*10Hz=3.33Hz.
PmgR

gotoluc

  • elite_member
  • Hero Member
  • ******
  • Posts: 3096
Hi Luc, very nice demonstration.

You need to change the line that says:

x=5; //total loop delay is 20*x = 100ms. f=10Hz

You can change it to any of the the lines below:
x=1;  // x=1ms, loop delay is 20ms, results in 50Hz loop speed, or 1/3*50Hz magnet spin speed
x=2;  // x=2ms, loop delay is 40ms, results in 25Hz loop speed, or 1/3*25Hz magnet spin speed
x=3;  // x=3ms, loop delay is 60ms, results in 16.66Hz loop speed, or 1/3*16.66Hz magnet spin speed
x=4;  // x=4ms, loop delay is 80ms, results in 12.5Hz loop speed, or 1/3*12.5Hz magnet spin speed
x=5;  // x=5ms,loop delay is 100ms, results in 10Hz loop speed, or 1/3*10Hz magnet spin speed
x=10;  // x=10ms, loop delay is 200ms results in 5Hz loop speed, or 1/3*5Hz magnet spin speed
x=20;  // x=20ms, loop delay is 400ms results in 2.5Hz loop speed, or 1/3*2.5Hz magnet spin speed
x=25;  // x=25ms, loop delay is 500ms results in 2Hz loop speed, or 1/3*2Hz magnet spin speed
x=50;  // x=50ms, loop delay is 1000ms results in 1Hz loop speed, or 1/3*1Hz magnet spin speed

I note that it takes three times looping to go around the stator one time, so the magnet speed is 1/3 of the loop speed. Currently the loop speed is set (x=5) at 10Hz, so your magnet is spinning at 1/3*10Hz=3.33Hz.
PmgR

Thanks

I changed line   x=5; //total loop delay is 20*x = 100ms. f=10Hz   to   x=50; //total loop delay is 20*x = 100ms. f=10Hz   and got an upload error!

See Video: https://youtu.be/1hS1KNXARLw

What next?

Thanks for your help

Luc

pmgr

  • Full Member
  • ***
  • Posts: 184
    • Stop organ harvesting from Falun Gong practitioners
Made one change and got an error uploading to Arduino

Video: https://youtu.be/1hS1KNXARLw
Luc, check the serial port settings in your laptop Arduino program (the program you upload the sketch with). Most likely the wrong serial port is selected so it can't talk to the Arduino. Also make sure the correct Arduino is selected: should be the 2560 which is the board you are using.
PmgR

cheors

  • Jr. Member
  • **
  • Posts: 89
L298 boards :    WARNING :

Connect IN1 to IN4 and IN2 to IN3 for full paralleling .
OUT1 to OUT4 and OUT2 to OUT3.
ENABLEA to ENABLEB
-----------------------------------------------------------------------
Connect IN1 to IN2 and IN3 to IN4 for semi paralleling .
OUT1 to OUT2 and OUT3 to OUT4.
ENABLEA and ENABLEB separated

Refer to datasheet:
http://www.st.com/content/ccc/resource/technical/document/datasheet/82/cc/3f/39/0a/29/4d/f0/CD00000240.pdf/files/CD00000240.pdf/jcr:content/translations/en.CD00000240.pdf
« Last Edit: April 12, 2018, 09:00:26 AM by cheors »

gotoluc

  • elite_member
  • Hero Member
  • ******
  • Posts: 3096
Luc, check the serial port settings in your laptop Arduino program (the program you upload the sketch with). Most likely the wrong serial port is selected so it can't talk to the Arduino. Also make sure the correct Arduino is selected: should be the 2560 which is the board you are using.
PmgR

Yes, I've checked all that. It's the same laptop I used and all parameters are correctly selected.

Could it be when I change  x=5; //total loop delay is 20*x = 100ms. f=10Hz   to   x=50; //total loop delay is 20*x = 100ms. f=10Hz  I also need to change the 100ms. f=10Hz to 1000ms. f=1Hz ?

Thanks
Luc

pmgr

  • Full Member
  • ***
  • Posts: 184
    • Stop organ harvesting from Falun Gong practitioners
Yes, I've checked all that. It's the same laptop I used and all parameters are correctly selected.

Could it be when I change  x=5; //total loop delay is 20*x = 100ms. f=10Hz   to   x=50; //total loop delay is 20*x = 100ms. f=10Hz  I also need to change the 100ms. f=10Hz to 1000ms. f=1Hz ?

Thanks
Luc
No, that doesn't matter. It's behind // which is a comment. Besides, the sketch compiles fine you said. Just doesn't upload. I suggest rebooting your laptop and unplugging and replugging the USB that goes to the Arduino. If you can't figure it out, I can assist you later tonight after I get home.
PmgR

gotoluc

  • elite_member
  • Hero Member
  • ******
  • Posts: 3096
Okay, thanks for helping while you're still at work.
I think there may be a usb port conflict.  I'm rebooting to try to resolve it.

Regards
Luc

Slider2732

  • Full Member
  • ***
  • Posts: 119
Yeah, it's just the port by the looks of it.
Nothing wrong with the code.
At the bottom of your screen it shows you've selected the right type of Arduino and indeed it compiles fine. The only thing different would be the Port.
Click 'Tools', then 'Port' and see what it says there...you should only have 1 or 2 to select from and it seems like it's picking the wrong one as default.

Another way, is to unplug the Arduino USB cable and plug it back in, the other port will then be selected. At least here on Linux Mint it does, from USB0 to USB1 even if it's the same device being plugged in and out.


stargate22

  • Newbie
  • *
  • Posts: 14
Yeah, it's just the port by the looks of it.
Nothing wrong with the code.
At the bottom of your screen it shows you've selected the right type of Arduino and indeed it compiles fine. The only thing different would be the Port.
Click 'Tools', then 'Port' and see what it says there...you should only have 1 or 2 to select from and it seems like it's picking the wrong one as default.

Another way, is to unplug the Arduino USB cable and plug it back in, the other port will then be selected. At least here on Linux Mint it does, from USB0 to USB1 even if it's the same device being plugged in and out.


I had a similar problem,  but by installing the "driver" and reinstall of the complete Arduino program resolved identifying the port connection identification... : ]

Slider2732

  • Full Member
  • ***
  • Posts: 119
Might look into that.
It's worthwhile pointing out because of easily understood frustrations for new folks.

gotoluc

  • elite_member
  • Hero Member
  • ******
  • Posts: 3096
Well, it looks like the Arduino board itself has a communication issue. The program is working but I can't upload any changes. See video.
So if someone can send me or buy me a replacement that would be great. Meanwhile I can test as is and need to know if I add a potentiometer (to vary frequency) is that part still in the program?

Fr. Eh bien, il semble que la carte Arduino elle-même a un problème de communication. Le programme fonctionne, mais je ne peux pas télécharger de modifications. Voir la vidéo
Donc si quelqu'un peut m'envoyer ou m'acheter un remplacement ce serait génial. En attendant je peux tester tel quel et j'ai besoin de savoir si j'ajoute un potentiomètre (pour faire varier la fréquence) cette partie est-elle encore dans le programme?

Video: https://youtu.be/8B2NOU0NaYw

pmgr

  • Full Member
  • ***
  • Posts: 184
    • Stop organ harvesting from Falun Gong practitioners
Well, it looks like the Arduino board itself has a communication issue. The program is working but I can't upload any changes. See video.
So if someone can send me or buy me a replacement that would be great. Meanwhile I can test as is and need to know if I add a potentiometer (to vary frequency) is that part still in the program?

Fr. Eh bien, il semble que la carte Arduino elle-même a un problème de communication. Le programme fonctionne, mais je ne peux pas télécharger de modifications. Voir la vidéo
Donc si quelqu'un peut m'envoyer ou m'acheter un remplacement ce serait génial. En attendant je peux tester tel quel et j'ai besoin de savoir si j'ajoute un potentiomètre (pour faire varier la fréquence) cette partie est-elle encore dans le programme?

Video: https://youtu.be/8B2NOU0NaYw
One more thing you should check is the serial port baud rate. You can change this under the device manager in Windows. I am not sure what the rate should be for the Arduino, but try the following rates:

9600, 14400, 19200, 28800, 38400, 57600, or 115200

For the potentiometer, you can uncomment Pierre's old lines:



int y= analogRead(0); // transforme x en une valeur de 0 à 20 (millisecondes)
x= map(y,0,1000 ,1,100);

and then comment your x=50 line:
// x=5; //total loop delay is 20*x = 100ms. f=10Hz


The potentiometer has 3 leads. Two outer ones should be hooked up to GND and 5V and the center one should be hooked up to the analog 0 input.


Also, see: https://www.arduino.cc/reference/en/language/functions/analog-io/analogread/

PmgR

stargate22

  • Newbie
  • *
  • Posts: 14
Well, it looks like the Arduino board itself has a communication issue. The program is working but I can't upload any changes. See video.
So if someone can send me or buy me a replacement that would be great. Meanwhile I can test as is and need to know if I add a potentiometer (to vary frequency) is that part still in the program?

Fr. Eh bien, il semble que la carte Arduino elle-même a un problème de communication. Le programme fonctionne, mais je ne peux pas télécharger de modifications. Voir la vidéo
Donc si quelqu'un peut m'envoyer ou m'acheter un remplacement ce serait génial. En attendant je peux tester tel quel et j'ai besoin de savoir si j'ajoute un potentiomètre (pour faire varier la fréquence) cette partie est-elle encore dans le programme?



Video: https://youtu.be/8B2NOU0NaYw



Options;
1). Remove board / UN-plug completely from device and re-program.

2).Add the following to the sketch....

void setup() {
  // initialize serial communications at 9600 bps:
  Serial.begin(9600);
}


 It initializes the serial connection at 9600 bits per second. Both sides of the serial connection (i.e. the Arduino and your computer) need to be set to use the same speed serial connection in order to get any sort of intelligible data. If there's a mismatch between what the two systems think the speed is then the data will be garbled.

9600 bits per second is the default for the Arduino, and is perfectly adequate for the majority of users, but you could change it to other speeds: Serial.begin(57600) would set the Arduino to transmit at 57600 bits per second. You'd need to set whatever software you're using on your computer (like the Arduino IDE's serial monitor) to the same speed in order to see the data being sent.

3) Looks like board is running when you re-programed, which is fine,  that can be done,  however Pierre may have been correct in pointing out the "field" may interfere with the board ?

That's all I have to comment... : {