Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On Mon, Jan 10, 2011 at 01:38:44PM -0500, John Kasunich wrote: The HAL component is technically a decoder and counter of those signals, but if we called it a decoder people would be really confused. Feeding the output of a physical encoder to a software encoder leaves the signal double encoded, and me thoroughly confused. Feeding an encoded signal to a decoder means that it has been recovered. That is so simple that I'm having some trouble comprehending how that is supposed to lead to confusion? Just as a step-up transformer and transmission line is not followed by another step-up transformer to return to low voltage; a line driver's output is connected to a line receiver; and a generator is connected to a motor in an electrical drive, it follows that a decoder is _needed_ if the output of an encoder is to be used. (Whether quadrature, HDB3, stereo, or dehydrated beans.) I agree with Kirk, and believe that double encoder thinking is muddled and confused. Saying what we mean would be a useful step toward clarity, and reduce the steepness of the EMC2 learning curve for all. Calling it an encoder counter or encoder interface would be better than just encoder, but people usually know what we mean. Likewise, hardware boards that support quadrature signals with or without index pulses usually call them encoder inputs or encoder counters. Yup, the encoder inputs are fed by the encoders, but exist on the decoder. (My stereo amplifier has a phono input, but that doesn't mean that there's a turntable in there.) Kirk: It's really just mice nuts, but I'm doing jury duty right now, so I may me in a lawyer's frame of mind. Lawyers, ewww. Apologies all, if my search for clarity and accuracy also seems legalistic. Erik -- The floods in Queensland have inundated an area equal to the size of France and Germany combined. - Heard on an American news show, relayed on an Australian TV channel. -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On 11 January 2011 08:57, Erik Christiansen dva...@internode.on.net wrote: Feeding the output of a physical encoder to a software encoder leaves the signal double encoded, and me thoroughly confused. The physical angle is encoded by the encoder into a swquence of quadrature pulses The HAL encoder encodes that series of quadrature pulses into a pattern of bits according to the codec known as IEEE 754. I agree with Kirk, and believe that double encoder thinking is muddled and confused. Saying what we mean would be a useful step toward clarity, and reduce the steepness of the EMC2 learning curve for all. I agree with the first part of this statement. I do not think that the second part follows from the first. In the context of CNC an encoder tends to have a rather specific understanding (I put meaning first but changed my mind). There is no such understanding of the meaning of decoder. counter would work. However, do we _really_ want to break every single HAL file over a point of pedantry? -- atp Torque wrenches are for the obedience of fools and the guidance of wise men -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
However, do we _really_ want to break every single HAL file over a point of pedantry? Anyone who's pedanting enough can fix their own config using HAL alias commands ;) Regards, Alex -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On Tue, Jan 11, 2011 at 11:11:42AM +, andy pugh wrote: However, do we _really_ want to break every single HAL file over a point of pedantry? No, I suspect your proposal might meet with limited support. Kirk, AIUI, and I have referred only to documentation. It is helpful if documentation is reasonably accurate. Erik -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
Erik Christiansen wrote: On Mon, Jan 10, 2011 at 01:38:44PM -0500, John Kasunich wrote: The HAL component is technically a decoder and counter of those signals, but if we called it a decoder people would be really confused. Feeding the output of a physical encoder to a software encoder leaves the signal double encoded, and me thoroughly confused. Feeding an encoded signal to a decoder means that it has been recovered. That is so simple that I'm having some trouble comprehending how that is supposed to lead to confusion? The HAL encoder module is designed to be the interface to an encoder. Its only purpose is to provide the information from an encoder to EMC. If you consider that an encoder encodes some information, then you could say you need a decoder to convert that info back to useful form. But, you have to adapt to the common language used by others who employ this technology. I think the documentation adequately describes what this does. Jon -- Protect Your Site and Customers from Malware Attacks Learn about various malware tactics and how to avoid them. Understand malware threats, the impact they can have on your business, and how you can protect your company and customers by using code signing. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On Sun, 09 Jan 2011 15:04 -0800, Kirk Wallace kwall...@wallacecompany.com wrote: On Sun, 2011-01-09 at 12:41 -0600, Jon Elson wrote: The hal component encoder is a specific implementation of an encoder, equivalent in function to a general encoder counter module which might be partly implemented in hardware or software. I think the term encoder has been used rather loosely, but Wikipedia states: An encoder is a device, circuit, transducer, software program, algorithm or person that converts information from one format or code to another,... To me, that means a rotary disk and sensor encodes position information into a set of quadrature signals. Then, I consider that the quadrature signals are decoded by the misnamed encoder component into counts which are then stored and managed by a count/position register -- encoder = decoder = counter. Technically you are probably correct, but if we used that nomenclature we would confuse the hell out of everybody. In the CNC world, the encoder is the thing connected to a shaft that generates the pulses. To be precise we should say absolute encoder or incremental quadrature encoder or one of several other possibilities, but the default meaning is incremental quadrature encoder, and when we refer to encoder signals we mean quadrature, possibly with an index pulse. The HAL component is technically a decoder and counter of those signals, but if we called it a decoder people would be really confused. Calling it an encoder counter or encoder interface would be better than just encoder, but people usually know what we mean. Likewise, hardware boards that support quadrature signals with or without index pulses usually call them encoder inputs or encoder counters. It's really just mice nuts, but I'm doing jury duty right now, so I may me in a lawyer's frame of mind. Lawyers, ewww. -- John Kasunich jmkasun...@fastmail.fm -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
John, I've been checking the integrators manual, and yes Encoder and Encoder_Sim HAL components are described, but references to the Canonical Encoder interface are done. So I understand, they are different things: a)Encoder at section 8.6 of the integrator manual is more like the description of a particular software implementation already present in HAL. b)Canonical encoder (or canonical *) is more like what should be the elements that an EMC developer should expect/consider to exist in any EMC compatible encoder (*) interface, should it be a HAL software encoder (*) or the HAL interface to the real encoder (*) present in a for example MOTENC-100 card. Also, references to canonical digital input and output are done in the Integrator's manual, but the document at which they should be found (HAL user manual), is not referenced except in one place, in which the canonical encoder interface is referred to be in the HAL user manual. --literally-- encoder.chan.reset (bit, In) – See the canonical encoder interface section of the HAL manual. --end literally-- I don't know if the canonical concept is a fundamental one to the understanding of EMC, I think it can, at least for the elements that one should expect to found in standard retrofit projects. If that is intended encoder looks like such standard element and then should be described along other canonical interfaces. If the canonical concept is not that interesting I think that references to the canonical interface should be removed, at least those to elements that do not have a canonical interface definition. Thanks, Javier On Sat, Jan 8, 2011 at 1:24 PM, John Thornton bjt...@gmail.com wrote: The encoder component was removed from the HAL manual because it was incorrect and is in the Integrators manual. John Jon Elson wrote: Javier Ros wrote: Hello, I think that the Chapter 4 Canonical Device Interfaces lacks a section about the canonical encoder, as I've seen it referenced elsewhere. Am I right? Yes, something happened over a year ago, and at least a whole page disappeared from the document. You can go back to a 2009, or possibly 2008 version and there is much more info there. Hopefully, John Thornton or somebody can go and put this back. Also, I've not seen any reference to linksp linkps and newsig that are used in some .hal files of example configurations of current version. newsig, linksp and the inverse are obsolete, but still supported. In the original HAL, you had to define the signal on one line, and then link each pin to the signal on a separate line. Now, the net command is preferred, where the definition and pins can all be on one line. I suppose they are obsolete, although supported, and that their functionality is intended to be replaced with net. Yes, exactly. Also about = or= in net commands: I understand from the examples that they are optional, but Yes, they are optional, and have no meaning except for human clarification. Jon -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On Sun, 2011-01-09 at 11:42 +0100, Javier Ros wrote: John, I've been checking the integrators manual, and yes Encoder and Encoder_Sim HAL components are described, but references to the Canonical Encoder interface are done. So I understand, they are different things: a)Encoder at section 8.6 of the integrator manual is more like the description of a particular software implementation already present in HAL. b)Canonical encoder (or canonical *) is more like what should be the elements that an EMC developer should expect/consider to exist in any EMC compatible encoder (*) interface, should it be a HAL software encoder (*) or the HAL interface to the real encoder (*) present in a for example MOTENC-100 card. ...snip I'm not John, but from my study of encoder, it seems encoder is really a software interface and decoder, or ABZ to numerical converter of quadrature incremental encoder signals. It may be beneficial to move towards this kind of terminology. Also I wonder if it might be better to break the component into two separate components, interface and counter? I tried to compose a canonical description (but didn't finish) by compiling the information in; Figure 8.8: Encoder Counter Block Diagram, in section 8.6 of the current Integrators Manual, http://www.linuxcnc.org/docs/EMC2_Integrator_Manual.pdf in connection with the encoder.9 entry in the html documentation, http://www.linuxcnc.org/docview/html/man/man9/encoder.9.html then referencing various sample configuration files to see which pins and parameters where essential and also commonly used. The source code comes in handy too. http://git.linuxcnc.org/gitweb?p=emc2.git;a=blob;f=src/hal/components/encoder.c;h=f20b7a68926f6582a482da7bcec404eb0d55015e;hb=HEAD (Short URL) http://alturl.com/hrkus It seems the information and features relevant to Figure 8.8 has grown over time, to about twice as complex as it is currently presented, but few of the possible features are commonly used, so it may be better to label Figure 8.8 as a basic presentation of a more complex component. The text should cover or indicate the presence of all current features. It creates confusion when information has to be sourced from various locations and analyzed to get a comprehensive understanding, but on the other hand, if I could figure out how encoder works using the present information, most people should also be able to. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
Javier Ros wrote: John, I've been checking the integrators manual, and yes Encoder and Encoder_Sim HAL components are described, but references to the Canonical Encoder interface are done. Did you mean gone? I believe it was Jeff Epler who showed me a saved copy of an old version which had at least a page on the canonical encoder interface, and it had a lot of good info there that was nowhere else. If the canonical concept is not that interesting I think that references to the canonical interface should be removed, at least those to elements that do not have a canonical interface definition. From what I recall Jeff showing me, I think that it should be brought back. Jon -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On Sun, 2011-01-09 at 12:41 -0600, Jon Elson wrote: Kirk Wallace wrote: I'm not John, but from my study of encoder, it seems encoder is really a software interface and decoder, The hal component encoder is a specific implementation of an encoder, equivalent in function to a general encoder counter module which might be partly implemented in hardware or software. But, there should be a canonical definition of what an encoder MUST provide for basic functionality with EMC, and what features might be optional. I agree with this concept of encoder canonical interface. What are he bare minimum needs of emc to be able to work with a given encoder interface. Think about homing, in order to work properly it is in my opinion dependent on the way the enable_index pin works (and much other things of course). Javier So, the ability to convert some kind of position reading to a scaled, floating point value exported to a hal pin would be mandatory. The ability to simultaneously latch the count of multiple encoders would be desirable. The ability to zero the count when an encoder index pulse is seen is a help to homing and threading operations, but maybe not strictly mandatory. Velocity estimation from encoder count timestamps is helpful to PID stability. And, so forth Jon -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
On Sun, 2011-01-09 at 12:41 -0600, Jon Elson wrote: Kirk Wallace wrote: I'm not John, but from my study of encoder, it seems encoder is really a software interface and decoder, The hal component encoder is a specific implementation of an encoder, equivalent in function to a general encoder counter module which might be partly implemented in hardware or software. I think the term encoder has been used rather loosely, but Wikipedia states: An encoder is a device, circuit, transducer, software program, algorithm or person that converts information from one format or code to another,... To me, that means a rotary disk and sensor encodes position information into a set of quadrature signals. Then, I consider that the quadrature signals are decoded by the misnamed encoder component into counts which are then stored and managed by a count/position register -- encoder = decoder = counter. It's really just mice nuts, but I'm doing jury duty right now, so I may me in a lawyer's frame of mind. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
The encoder component was removed from the HAL manual because it was incorrect and is in the Integrators manual. John Jon Elson wrote: Javier Ros wrote: Hello, I think that the Chapter 4 Canonical Device Interfaces lacks a section about the canonical encoder, as I've seen it referenced elsewhere. Am I right? Yes, something happened over a year ago, and at least a whole page disappeared from the document. You can go back to a 2009, or possibly 2008 version and there is much more info there. Hopefully, John Thornton or somebody can go and put this back. Also, I've not seen any reference to linksp linkps and newsig that are used in some .hal files of example configurations of current version. newsig, linksp and the inverse are obsolete, but still supported. In the original HAL, you had to define the signal on one line, and then link each pin to the signal on a separate line. Now, the net command is preferred, where the definition and pins can all be on one line. I suppose they are obsolete, although supported, and that their functionality is intended to be replaced with net. Yes, exactly. Also about = or= in net commands: I understand from the examples that they are optional, but Yes, they are optional, and have no meaning except for human clarification. Jon -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
[Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
Hello, I think that the Chapter 4 Canonical Device Interfaces lacks a section about the canonical encoder, as I've seen it referenced elsewhere. Am I right? Also, I've not seen any reference to linksp linkps and newsig that are used in some .hal files of example configurations of current version. I suppose they are obsolete, although supported, and that their functionality is intended to be replaced with net. Am I right? Also about = or = in net commands: I understand from the examples that they are optional, but I think that this is not reflected in the manual. Thank you, Javier -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users
Re: [Emc-users] HAL Documentation: canonical encoder, linksp, linkps, newsig
Javier Ros wrote: Hello, I think that the Chapter 4 Canonical Device Interfaces lacks a section about the canonical encoder, as I've seen it referenced elsewhere. Am I right? Yes, something happened over a year ago, and at least a whole page disappeared from the document. You can go back to a 2009, or possibly 2008 version and there is much more info there. Hopefully, John Thornton or somebody can go and put this back. Also, I've not seen any reference to linksp linkps and newsig that are used in some .hal files of example configurations of current version. newsig, linksp and the inverse are obsolete, but still supported. In the original HAL, you had to define the signal on one line, and then link each pin to the signal on a separate line. Now, the net command is preferred, where the definition and pins can all be on one line. I suppose they are obsolete, although supported, and that their functionality is intended to be replaced with net. Yes, exactly. Also about = or = in net commands: I understand from the examples that they are optional, but Yes, they are optional, and have no meaning except for human clarification. Jon -- Gaining the trust of online customers is vital for the success of any company that requires sensitive data to be transmitted over the Web. Learn how to best implement a security strategy that keeps consumers' information secure and instills the confidence they need to proceed with transactions. http://p.sf.net/sfu/oracle-sfdevnl ___ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users