Greetings,
Today I had a brief conversation with Prof. Meggiolaro (A Robotics professor from mech department at PUC-Rio) about his requirements for the PID module. The basic application is control of DC motors, for actuators of manipulators. Based on that we made a little brain storm (or should be a brain breeze =) ) about the interfacing of the PID module with the external world. We concluded that PID should be independent of AD , DA , PWM etc modules, but easily "linkable". So I was wondering about some kind of linking mechanism to set the origin of the input and destination of output. Something like this: PID.setPInput(AD0) PID.setDInput(SPI0) PID.setOutput(PWM0) here we would set the proportional input from the AD0 and the Differential input from a SPI interface (this is a common case. suppose we use a external ADc that sends data via SPI) and setting the output to PWM Suggestions, critics, dark spells, anyone? -- --Pedro Bittencourt -------------- next part -------------- An HTML attachment was scrubbed... URL: https://lists.berlios.de/pipermail/elua-dev/attachments/20081119/acba09bc/attachment.html |
Hi,
That's one way to do it, but you're tying the PID module to peripherals, which is a bit strange to me, since PID itself doesn't care at all about peripherals, it uses only numbers to operate. Ideally, I'd make the PID module completely unaware of the fact that we even have an ADC in the system. Feed it the required inputs (numerically), then take the outputs and output them to wherever you like (PWM, screen, file...). Then again, your approach is tightly integrated with the rest of the system, which might be a better approach, so it could work. But then we'd have to define the exact interface(s) required for "PID devices" such as PInput, DInput, Output. If these interfaces can be made small and easy enough to use, there's no reason not to go with your approach. Best, Bogdan On Wed, Nov 19, 2008 at 5:38 AM, Pedro Bittencourt <pedrobittencourt87 at gmail.com> wrote: > Greetings, > > Today I had a brief conversation with Prof. Meggiolaro (A Robotics professor > from mech department at PUC-Rio) about his requirements for the PID module. > The basic application is control of DC motors, for actuators of > manipulators. Based on that we made a little brain storm (or should be a > brain breeze =) ) about the interfacing of the PID module with the external > world. > > We concluded that PID should be independent of AD , DA , PWM etc modules, > but easily "linkable". So I was wondering about some kind of linking > mechanism to set the origin of the input and destination of output. > Something like this: > > PID.setPInput(AD0) > PID.setDInput(SPI0) > > PID.setOutput(PWM0) > > here we would set the proportional input from the AD0 and the Differential > input from a SPI interface (this is a common case. suppose we use a > external ADc that sends data via SPI) > and setting the output to PWM > > Suggestions, critics, dark spells, anyone? > -- > --Pedro Bittencourt > > _______________________________________________ > Elua-dev mailing list > Elua-dev at lists.berlios.de > https://lists.berlios.de/mailman/listinfo/elua-dev > > |
Pls let's keep this thread (PID) warm, because it is an important one for
eLua usage in some small projects but some that will present eLua to a loooooot of students downhere. If we can have it running on a Lego NXT (Atmel ARM9) platform, it will be still better !!! Best Dado On Wed, Nov 19, 2008 at 06:00, Bogdan Marinescu <bogdan.marinescu at gmail.com>wrote: > Hi, > > That's one way to do it, but you're tying the PID module to > peripherals, which is a bit strange to me, since PID itself doesn't > care at all about peripherals, it uses only numbers to operate. > Ideally, I'd make the PID module completely unaware of the fact that > we even have an ADC in the system. Feed it the required inputs > (numerically), then take the outputs and output them to wherever you > like (PWM, screen, file...). > Then again, your approach is tightly integrated with the rest of the > system, which might be a better approach, so it could work. But then > we'd have to define the exact interface(s) required for "PID devices" > such as PInput, DInput, Output. If these interfaces can be made small > and easy enough to use, there's no reason not to go with your > approach. > > Best, > Bogdan > > > On Wed, Nov 19, 2008 at 5:38 AM, Pedro Bittencourt > <pedrobittencourt87 at gmail.com> wrote: > > Greetings, > > > > Today I had a brief conversation with Prof. Meggiolaro (A Robotics > professor > > from mech department at PUC-Rio) about his requirements for the PID > module. > > The basic application is control of DC motors, for actuators of > > manipulators. Based on that we made a little brain storm (or should be a > > brain breeze =) ) about the interfacing of the PID module with the > external > > world. > > > > We concluded that PID should be independent of AD , DA , PWM etc modules, > > but easily "linkable". So I was wondering about some kind of linking > > mechanism to set the origin of the input and destination of output. > > Something like this: > > > > PID.setPInput(AD0) > > PID.setDInput(SPI0) > > > > PID.setOutput(PWM0) > > > > here we would set the proportional input from the AD0 and the > Differential > > input from a SPI interface (this is a common case. suppose we use a > > external ADc that sends data via SPI) > > and setting the output to PWM > > > > Suggestions, critics, dark spells, anyone? > > -- > > --Pedro Bittencourt > > > > _______________________________________________ > > Elua-dev mailing list > > Elua-dev at lists.berlios.de > > https://lists.berlios.de/mailman/listinfo/elua-dev > > > > > _______________________________________________ > Elua-dev mailing list > Elua-dev at lists.berlios.de > https://lists.berlios.de/mailman/listinfo/elua-dev > An HTML attachment was scrubbed... URL: https://lists.berlios.de/pipermail/elua-dev/attachments/20081126/b9c8b617/attachment.html |
I think pbLua already has a PID module? I might be wrong though, it's been a
while since I looked at it. Are you thinking eLua on Lego NXT? Ralph might get upset :) Best, Bogdan On Wed, Nov 26, 2008 at 4:15 PM, Dado Sutter <dadosutter at gmail.com> wrote: > Pls let's keep this thread (PID) warm, because it is an important one for > eLua usage in some small projects but some that will present eLua to a > loooooot of students downhere. > If we can have it running on a Lego NXT (Atmel ARM9) platform, it will be > still better !!! > > Best > Dado > > > > > On Wed, Nov 19, 2008 at 06:00, Bogdan Marinescu < > bogdan.marinescu at gmail.com> wrote: > >> Hi, >> >> That's one way to do it, but you're tying the PID module to >> peripherals, which is a bit strange to me, since PID itself doesn't >> care at all about peripherals, it uses only numbers to operate. >> Ideally, I'd make the PID module completely unaware of the fact that >> we even have an ADC in the system. Feed it the required inputs >> (numerically), then take the outputs and output them to wherever you >> like (PWM, screen, file...). >> Then again, your approach is tightly integrated with the rest of the >> system, which might be a better approach, so it could work. But then >> we'd have to define the exact interface(s) required for "PID devices" >> such as PInput, DInput, Output. If these interfaces can be made small >> and easy enough to use, there's no reason not to go with your >> approach. >> >> Best, >> Bogdan >> >> >> On Wed, Nov 19, 2008 at 5:38 AM, Pedro Bittencourt >> <pedrobittencourt87 at gmail.com> wrote: >> > Greetings, >> > >> > Today I had a brief conversation with Prof. Meggiolaro (A Robotics >> professor >> > from mech department at PUC-Rio) about his requirements for the PID >> module. >> > The basic application is control of DC motors, for actuators of >> > manipulators. Based on that we made a little brain storm (or should be a >> > brain breeze =) ) about the interfacing of the PID module with the >> external >> > world. >> > >> > We concluded that PID should be independent of AD , DA , PWM etc >> modules, >> > but easily "linkable". So I was wondering about some kind of linking >> > mechanism to set the origin of the input and destination of output. >> > Something like this: >> > >> > PID.setPInput(AD0) >> > PID.setDInput(SPI0) >> > >> > PID.setOutput(PWM0) >> > >> > here we would set the proportional input from the AD0 and the >> Differential >> > input from a SPI interface (this is a common case. suppose we use a >> > external ADc that sends data via SPI) >> > and setting the output to PWM >> > >> > Suggestions, critics, dark spells, anyone? >> > -- >> > --Pedro Bittencourt >> > >> > _______________________________________________ >> > Elua-dev mailing list >> > Elua-dev at lists.berlios.de >> > https://lists.berlios.de/mailman/listinfo/elua-dev >> > >> > >> _______________________________________________ >> Elua-dev mailing list >> Elua-dev at lists.berlios.de >> https://lists.berlios.de/mailman/listinfo/elua-dev >> > > > _______________________________________________ > Elua-dev mailing list > Elua-dev at lists.berlios.de > https://lists.berlios.de/mailman/listinfo/elua-dev > > An HTML attachment was scrubbed... URL: https://lists.berlios.de/pipermail/elua-dev/attachments/20081126/7d54db4c/attachment.html |
Yes, Ralph will not like it too much but this is exactly what I intend to do
:-o :) There is a class in PUC-Rio called "Introduction to Engineering", offered on the very first period for ALL the students of ALL engineerings. Lego NXT kits are used to assembly "robotic" projects for a final presentation 6 months later. The course is not focused on the software, electrical hardware, programming technics but on solutions aproaches to diferent chalenges. What I intend to do is to offer eLua for the students from the first contact they have with software at the university and to make them use the Legos as if eLua/Lua was the "machine language" of the kits. Other more specialized classes on robotics, mechanical engineering and control & automation also use dedicated hardware for the projects and they are all a very fertile terrain for eLua too. But the Lego is strategically important and it will be great if we can come up with an eLua porting for it one of these days. The PID module thread is another and independent story though, as we really need them for what we have already and for ongoing projects. As some others (that I also intend to discuss here very soon), it would be nice to have the great advice from all of you on the architectural aspects Best Dado On Wed, Nov 26, 2008 at 12:32, Bogdan Marinescu <bogdan.marinescu at gmail.com>wrote: > I think pbLua already has a PID module? I might be wrong though, it's been > a while since I looked at it. > Are you thinking eLua on Lego NXT? Ralph might get upset :) > > Best, > Bogdan > > > On Wed, Nov 26, 2008 at 4:15 PM, Dado Sutter <dadosutter at gmail.com> wrote: > >> Pls let's keep this thread (PID) warm, because it is an important one for >> eLua usage in some small projects but some that will present eLua to a >> loooooot of students downhere. >> If we can have it running on a Lego NXT (Atmel ARM9) platform, it will be >> still better !!! >> >> Best >> Dado >> >> >> >> >> On Wed, Nov 19, 2008 at 06:00, Bogdan Marinescu < >> bogdan.marinescu at gmail.com> wrote: >> >>> Hi, >>> >>> That's one way to do it, but you're tying the PID module to >>> peripherals, which is a bit strange to me, since PID itself doesn't >>> care at all about peripherals, it uses only numbers to operate. >>> Ideally, I'd make the PID module completely unaware of the fact that >>> we even have an ADC in the system. Feed it the required inputs >>> (numerically), then take the outputs and output them to wherever you >>> like (PWM, screen, file...). >>> Then again, your approach is tightly integrated with the rest of the >>> system, which might be a better approach, so it could work. But then >>> we'd have to define the exact interface(s) required for "PID devices" >>> such as PInput, DInput, Output. If these interfaces can be made small >>> and easy enough to use, there's no reason not to go with your >>> approach. >>> >>> Best, >>> Bogdan >>> >>> >>> On Wed, Nov 19, 2008 at 5:38 AM, Pedro Bittencourt >>> <pedrobittencourt87 at gmail.com> wrote: >>> > Greetings, >>> > >>> > Today I had a brief conversation with Prof. Meggiolaro (A Robotics >>> professor >>> > from mech department at PUC-Rio) about his requirements for the PID >>> module. >>> > The basic application is control of DC motors, for actuators of >>> > manipulators. Based on that we made a little brain storm (or should be >>> a >>> > brain breeze =) ) about the interfacing of the PID module with the >>> external >>> > world. >>> > >>> > We concluded that PID should be independent of AD , DA , PWM etc >>> modules, >>> > but easily "linkable". So I was wondering about some kind of linking >>> > mechanism to set the origin of the input and destination of output. >>> > Something like this: >>> > >>> > PID.setPInput(AD0) >>> > PID.setDInput(SPI0) >>> > >>> > PID.setOutput(PWM0) >>> > >>> > here we would set the proportional input from the AD0 and the >>> Differential >>> > input from a SPI interface (this is a common case. suppose we use a >>> > external ADc that sends data via SPI) >>> > and setting the output to PWM >>> > >>> > Suggestions, critics, dark spells, anyone? >>> > -- >>> > --Pedro Bittencourt >>> > >>> > _______________________________________________ >>> > Elua-dev mailing list >>> > Elua-dev at lists.berlios.de >>> > https://lists.berlios.de/mailman/listinfo/elua-dev >>> > >>> > >>> _______________________________________________ >>> Elua-dev mailing list >>> Elua-dev at lists.berlios.de >>> https://lists.berlios.de/mailman/listinfo/elua-dev >>> >> >> >> _______________________________________________ >> Elua-dev mailing list >> Elua-dev at lists.berlios.de >> https://lists.berlios.de/mailman/listinfo/elua-dev >> >> > An HTML attachment was scrubbed... URL: https://lists.berlios.de/pipermail/elua-dev/attachments/20081126/e751be33/attachment-0001.html |
Free forum by Nabble | Edit this page |