Re: [Emc-users] CANopen configuration files, CiA 309-3

2019-03-17 Thread Gene Heskett
On Sunday 17 March 2019 17:56:02 Nicklas Karlsson wrote:

> > ...
> > So once every 1/2 second a message starting with 0x40A shows up on
> > the bus and everyone sees it.  The Charger and in this case also a
> > small display are the only ones interested in it.   The charger uses
> > the information to set charge on/off, voltage and current.  The
> > display grabs the information and shows what the current charge
> > voltage and max current are set to.
> >
> > The charger also reports in a different message what it measures for
> > battery voltage and what the current charge current is and it
> > reports if it's enabled.  That's all identified by the Object
> > Dictionary entries at 18xx and 1Axx.
>
> I am familiar with CANopen communication and also to some degree
> battery charging. The old style open Lead-acid batteries should bubble
> like home brewn mash before they are done.
>
Fraid not Nik. And this is TL;DR, but read it anyway. LA batteries might 
bubble gently when being heavily charged, but every bubble is 
electrolite lost forever and its hard on the plates.

Someone in the distant past at kxne-tv had put a 10 amp charger on a pair 
of 220 AH truck batteries with a 47 ohm 5 watt resistor in series, so 
they were getting about 600 ma as a trickle charge into the two of them 
in parallel. So they were boiling at a good rate.  But they weren't 
turning a comealong 335 with a 150 kw pot on it, over at all well and in 
just another couple months refused to turn it over at all. They were 
setup like the typical truck, with relays to make the 2 in series for 24 
volts for starting.  I called the head shed in star city and got a PO 
number to go get 2 more of them.

Bought them dry with enough acid to fill them. Brought them in, filled 
them and hooked up the cables to the comealong. No charger. Hit the 
starter button and they did everything but turn that 335 Cummings wrong 
side out, and in <2 seconds it hit the 1800 rpm governor and sat there 
very quietly without a load.

The dates on the batteries I took out indicated they were new about a 
year before I got the door keys. That battery charger burned them up, so 
I reduced its current with a few more ohms of R. By the time those 
batteries quit brewing about 2 weeks later, the resistor was up to 6800 
ohms. I stayed there from late 69 to the middle of '77 when I got an 
offer of the chiefs chair at a starving tv station in New Mexico.  Those 
two now 7 year old batteries were still turning that comealong wrong 
side out. There was about a 5 second after the power failure delay in 
the standby controller, but the lights were back on in nominally 6.5 
seconds. You heard the starter hit the flywheel, the first cylinder past 
tdc fired and it was up to 1800 about 1 second later.  Since it was 
started weekly for a 15 minute dry run, it never needed that charger in 
the first place.

One thing I've learned about LA batteries is that no two are alike. I had 
one 120 amp battery and matching big alternator in an old pontiac, got 
it off a wrecked ambulance, but didn't get the voltage regulator, so I 
designed a switch mode version and put a bunch of cold temps boost in 
it, around 16.5 volts until the engine compartment got up to operating 
temps if it was 30 below out. At normal summer temps, about 12.85 volts. 
Had that station wagon setup that way for about 7 years and well over 
150k miles on that same battery, and it was still spinning that 389 a 
good 1000 rpm on the tach until the wife decided to admin the cou-de-tau 
as it had worn the pushrods out, putting the ends of them thru the 
sockets on the rockers & the con rods were complaining too. Said she 
wanted to see if the pan was big enough.  It wasn't.

But that battery was still there, and I had not added any water to it in 
7 years. Moral: Don't knock an LA battery if you aren't willing to learn 
what each one wants for care and feeding.
>
> CiA 309-3 is to access a CANopen device over TCP/IP and as I added it
> could be used to access dictionary of devices connected to Linuxcnc.
>
>
> Nicklas Karlsson
>
>
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users


Cheers, Gene Heskett
-- 
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page 



___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] CANopen configuration files, CiA 309-3

2019-03-17 Thread Nicklas Karlsson
> ...
> So once every 1/2 second a message starting with 0x40A shows up on the bus 
> and everyone sees it.  The Charger and in this case also a small display are 
> the only ones interested in it.   The charger uses the information to set 
> charge on/off, voltage and current.  The display grabs the information and 
> shows what the current charge voltage and max current are set to.
> 
> The charger also reports in a different message what it measures for battery 
> voltage and what the current charge current is and it reports if it's 
> enabled.  That's all identified by the Object Dictionary entries at 18xx and 
> 1Axx.

I am familiar with CANopen communication and also to some degree battery 
charging. The old style open Lead-acid batteries should bubble like home brewn 
mash before they are done.


CiA 309-3 is to access a CANopen device over TCP/IP and as I added it could be 
used to access dictionary of devices connected to Linuxcnc.


Nicklas Karlsson


___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] CANopen configuration files, CiA 309-3

2019-03-17 Thread John Dammeyer
I think you are mixing LinuxCNC HAL nomenclature with CANopen nomenclature.  
That could ultimately be very confusing I think.

> 0x1600 - 0x17FF are RPDO pins and end up as input pins.
> 0x1400 - 0x15FF are communication parameters and these may require som
> more thinking.
> 
This example that I posted is for a battery charger.  The 16 bit value at 
location 6071:00  on Charger with the address 0x0A refers to the charger 
maximum allowed current out to the battery.  There is no physical pin.  The 
non-linux world doesn’t refer to this as a pin.
> ###6###,19/03/10,10:56:08,r,0A,1602:01,60710010,( 1618018320) The first two 
> bytes go to 0x6071:00
This next parameter could easily be 60011 since it's a binary ON/OFF 
control for the charger.  But if it was only 1 bit wide then the next parameter 
would start at bit 17 and go on for 32 bits.  This could be a pin if there was 
an enable/disable line on the charger connector.
> ###6###,19/03/10,10:56:11,r,0A,1602:02,60010008,( 1610678280) The next byte 
> goes to 0x6001:00
It's easier to waste space and then be able to read the last 4 bytes on a byte 
boundary rather than a bit boundary which is why the previous one was 8 bits 
wide rather than 1.  
The last value is scaled charger output voltage.  Although my display shows it 
as Big Endian it's actually transmitted in the CAN frame as Little Endian.
> ###6###,19/03/10,10:56:15,r,0A,1602:03,22720020,( 577896480)  The last 4 
> bytes go to 0x2272:00

So once every 1/2 second a message starting with 0x40A shows up on the bus and 
everyone sees it.  The Charger and in this case also a small display are the 
only ones interested in it.   The charger uses the information to set charge 
on/off, voltage and current.  The display grabs the information and shows what 
the current charge voltage and max current are set to.

The charger also reports in a different message what it measures for battery 
voltage and what the current charge current is and it reports if it's enabled.  
That's all identified by the Object Dictionary entries at 18xx and 1Axx.

John


> Read out these mapping and adding pins should be rather simple but
> naming is a little bit more complicated. Without an *.eds or *.dcf file for
> CAN networks or an esi? *.xml file for Ethercat pins adding pins which end
> with the (index, subindex) numbers are probably a good choice.
> 
> I suspect there will be cases then manually accessing the dictionary of
> devices is useful and discovered I already added a probably incomplete
> implementation of CiA 309-3 ASCII server in the linuxcnc driver. This may be
> used to read what is needed from dictionary and for configuration using the
> manual and/or a *.eds/*.dcf or esi *.xml file if available.
> 
> 
> I did not find binary protocol. Do anybody know about a configuration tool
> which use or may use an CiA 309-3 gateway for communication? Or parse
> dictionary files?
> 
> 
> Nicklas Karlsson
> 
> 
> ___
> Emc-users mailing list
> Emc-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/emc-users



___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users


Re: [Emc-users] CANopen configuration files, CiA 309-3

2019-03-17 Thread Nicklas Karlsson
> > > Not all devices allow changing the PDO Mapping entries. ...
Then adding pin it does not matter how mapping was created though it is of 
course good with configuration options to configure mapping if needed, at least 
some PLCs do it like this.

> For example let's take a look at an object dictionary for a RPDO:  Here I 
> read each of the RPDO3 OD locations of Node 0x1A.
> ###6###,19/03/10,10:55:34,r,0A,1402:00,05,(5) We have 
> 5 entries
> ###6###,19/03/10,10:55:36,r,0A,1402:01,041A,( 1050)   It 
> responds to 0x41A
> ###6###,19/03/10,10:55:39,r,0A,1402:02,FF,(255)   
> Processed immediately
> ###6###,19/03/10,10:55:41,r,0A,1402:03,,(0)   No 
> inhibit time
> ###6###,19/03/10,10:55:44,r,0A,1402:04,06090011,(101253137)   Invalid read 
> error
> ###6###,19/03/10,10:55:46,r,0A,1402:05,,(0)   Event 
> timer is not used
> ###6###,19/03/10,10:55:57,r,0A,1602:00,03,(3) The 
> RPDO will have three values
> ###6###,19/03/10,10:56:08,r,0A,1602:01,60710010,( 1618018320) The first two 
> bytes go to 0x6071:00
> ###6###,19/03/10,10:56:11,r,0A,1602:02,60010008,( 1610678280) The next byte 
> goes to 0x6001:00
> ###6###,19/03/10,10:56:15,r,0A,1602:03,22720020,( 577896480)  The last 4 
> bytes go to 0x2272:00

0x1600 - 0x17FF are RPDO pins and end up as input pins.
0x1400 - 0x15FF are communication parameters and these may require som more 
thinking.

Read out these mapping and adding pins should be rather simple but naming is a 
little bit more complicated. Without an *.eds or *.dcf file for CAN networks or 
an esi? *.xml file for Ethercat pins adding pins which end with the (index, 
subindex) numbers are probably a good choice.

I suspect there will be cases then manually accessing the dictionary of devices 
is useful and discovered I already added a probably incomplete implementation 
of CiA 309-3 ASCII server in the linuxcnc driver. This may be used to read what 
is needed from dictionary and for configuration using the manual and/or a 
*.eds/*.dcf or esi *.xml file if available.


I did not find binary protocol. Do anybody know about a configuration tool 
which use or may use an CiA 309-3 gateway for communication? Or parse 
dictionary files?


Nicklas Karlsson


___
Emc-users mailing list
Emc-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-users