Netduino home hardware projects downloads community

Jump to content


The Netduino forums have been replaced by new forums at community.wildernesslabs.co. This site has been preserved for archival purposes only and the ability to make new accounts or posts has been turned off.

Brandon G's Content

There have been 92 items by Brandon G (Search limited from 20-April 23)


By content type

See this member's


Sort by                Order  

#7778 NetDuino Quadrocopter

Posted by Brandon G on 16 January 2011 - 09:42 PM in Netduino 2 (and Netduino 1)

Have started some source control on this, just taking some initial stabs at getting a nice generic framework put together for project. Separating hardware / frameworks from implementations as a trial of framework i put in chris setos old esc driver code with some modifications, havent tested it against any hardware nor put in test cases but wanted to assert the structure first then will deal with implementational details later starting pooint of code is Quad.Net.FlightController.Implementations.Netduino PM me for address, it should be a readonly right now, but as i get things solidified i would like to open it up to contributions, thoughts/criticisms always welcome



#7665 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 05:43 PM in Netduino 2 (and Netduino 1)

gryo disassembly http://www.kkmultico...embly&Itemid=65 they are just using what they need



#7654 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 04:38 PM in Netduino 2 (and Netduino 1)

dones, thanks for the PID link. great point starting with just one plane might be easier as a proof of concept, I was thinking of doing some simple tests with the gryos before i considered flying at all. a simple 2 prop setup might be a good way to start. Jan I will look at them more deeply, my understanding was they using one gyro for each roll pitch yaw and that they were being sent back to the controller for pid changes, they had basically taken those things apart and done a straight sodder to their custom board, they were chosen because they were cheap and they had the best success with them. I have read sparkfuns gyro acceleromter guide and man is it thorough, my hope was to go with what was proven out there and follow their same steps. Sparkfun has some great ones with 3 axis in one that would be ideal for this application but are more expensive and a more of an unknown but if your above post is correct then may be the way i need to go



#7635 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 04:34 AM in Netduino 2 (and Netduino 1)

and i always love the moon reference, its bloody amazing they did it at all. its funny but a quad is harder and requires more calcs



#7779 NetDuino Quadrocopter

Posted by Brandon G on 16 January 2011 - 09:44 PM in Netduino 2 (and Netduino 1)

Good call. BTW, the quantum is a constant and can be changed in code. We've never tried increasing it but it could be possible to increase it to, say, a few weeks/months. If everything is executing on a single thread and one is not using events or threading, this could be a valuable mod.

Chris



Chris where do i change this setting?



#7784 NetDuino Quadrocopter

Posted by Brandon G on 16 January 2011 - 11:51 PM in Netduino 2 (and Netduino 1)

http://forums.netdui...pter-for-netmf/



#9146 NetDuino Quadrocopter

Posted by Brandon G on 08 February 2011 - 05:35 AM in Netduino 2 (and Netduino 1)

kind of a strange idea to combine hydrogen and a quad, whats the lift lb/vol? wonder if you could add hydrogen to the structure without compromising aerodynamics and not blowing up (i would suggest inert). We've taken a pretty good look at all the open source offerings, they are all good but all quite specialized and dont read well. long term goal is to run all on the same mcu but as the hardware and framework stand now, impractical. We are running gyro and motors on netduino, radio on another mcu. The razor is great but defeats the purpose of what we're trying to do, we want to make the predictions and math and understand it, not have it written for us. On the other thread we have another interested user that has written a netmf handler for razor. From here on out i would suggest you write to other thread



#9121 NetDuino Quadrocopter

Posted by Brandon G on 07 February 2011 - 04:34 PM in Netduino 2 (and Netduino 1)

Hi dan, we've made some great progress in the last week. Our gc is running once every 10 seconds and is a very fast sweep, thats with telemetry logging via my custom serialization class. We will be moving source to eith GITHub or codeplex in the next few days. I have no personal experience with the shield given that we are starting simple only using 3 degrees to get off the ground, we want to be stable with only a gyro, then we can get fancy later. our main thread can be found here http://forums.netdui...pter-for-netmf/ we are also going to start posting on rcgroups once we finally get some hardware in and show our first stable flight via video



#8068 NetDuino Quadrocopter

Posted by Brandon G on 21 January 2011 - 05:45 PM in Netduino 2 (and Netduino 1)

a small test shows he's wrong, too bad was worth a try



#8066 NetDuino Quadrocopter

Posted by Brandon G on 21 January 2011 - 05:14 PM in Netduino 2 (and Netduino 1)

A guru buddy of mine suggested that F# would be perfect for the stab loop part of the program and saidi would be able to use F# as long as the calling assembly (entry point) was still in C#. So the C# program would call into and F# dll, since it all compiles to the same binaries it shouldnt be an issue. I would assume the same can be done with VB, listen to http://www.dotnetroc...spx?showNum=625 where they speak about VB



#6856 NetDuino Quadrocopter

Posted by Brandon G on 02 January 2011 - 09:32 PM in Netduino 2 (and Netduino 1)

I am looking at porting the kk multicopter code to C# and wondering if there are any others that would like to get involved in doing a quadrocopter project in C#?



#7634 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 04:30 AM in Netduino 2 (and Netduino 1)

n regards to the deterministic comments, gc is a mofo and can kill you at the worst times. what i think will compensate is the PID algos and making them smartand aware of the state of system. If there were on thing i wish would be built into .NET would be more ability to talk to GC and get stats and state of it. I have messed with GC a few times with very little success. It would be great to know where it is at in operation, so i could query it and understand that i should in this case, try and level out my quad or purge my queue because i know it to be too late etc



#7535 NetDuino Quadrocopter

Posted by Brandon G on 12 January 2011 - 10:18 PM in Netduino 2 (and Netduino 1)

Maybe i am being a bit naive here then. I was really hoping for an easy board to work with and this might not be the case then. I was hoping to do all this within the managed framework, PID, PWM PPM, RX fired from the events of the components attached to the board, similar to the ISR event of other boards (Once again i am a noob when it comes to the way in which these components interact back with the program) if the events fire fast enough we can make up for any small delays with a different PID calc. So as data comes in from gyros, reciever, escs they will fire events and we can interact with those instantiated objects that provide the stability}, I was planning on instantiating all objects at startup and using a CQRS style of messaging objects from the events with a time sensitive queue LIFO, this way when GC does come through its fast as all hell and is disposing small objects and not interrupting the main objects. the reason for the messaging objects is we can then take that data and lazy write it to an sd card for running simulations and debugging a flight afterwards, makes for a great picture of events and replayablity. 500hz seems a lil high to me and maybe overkill, Ive heard of people flying quite sucessfully with a loop operating in the range of 40 to 50hz and then going up to 500 and even 1000 and seeing no obvious gains, but until i start testing I wont know. I would hope we could achieve 40hz without changing or extending the firmware, btw i like the fluent model by corey seems interesting and would like to see his progress. To be honest i probably wont be using the RX at all within this project, plan on using wifi and tethered testing to start. So just make it fly stable account for wind and hover is part 1.



#7523 NetDuino Quadrocopter

Posted by Brandon G on 12 January 2011 - 06:15 PM in Netduino 2 (and Netduino 1)

http://www.kkmultico...loads&Itemid=65 take a look at the source, as i am new to the hardware side it has a few board properties i dont quite get, but the main logic is on the ISR and the loop. They also have asm code but i figuire this a little easier to read.



#7493 NetDuino Quadrocopter

Posted by Brandon G on 12 January 2011 - 07:30 AM in Netduino 2 (and Netduino 1)

Chris, with all due respect these are the same arguments i have had in past with the *Kings of quant on wall street and managed to make consideration for GC and when we handle objects correctly we can make anything perform as well if not better than native depending on the skill level of programmer. You make bad objects that require a GC pass constantly you will have issues. Now i do understand that GC is an issue but if your argument is simply GC I think i can proceed just with a more clever use of memory and objects. Now if there are inherent issues with the board and firing of events then we have an entirely different issue.When i work in finance we are making adjustments far faster than anything required in a quad stab engine so for me thats a non issue within the framework, my concern would be the board itself if thats it



#7490 NetDuino Quadrocopter

Posted by Brandon G on 12 January 2011 - 05:19 AM in Netduino 2 (and Netduino 1)

Hey Guys, sorry for the late reply, been out of country. Chris S, being new to netduino i will definitely capitulate to your assertion that it is hard if not impossible but would like to understand your reasoning, is it GC or the interrupt events not firing fast enough. If the latter would Chris W's suggestion handle that issue? I would rather not mix and match and cause more latency in decision making and context switching between languages and boards if possible. The reason i picked KK's project was that it started simpler than any i had seen, only uses 3 gyros, no accelerometer, magnetometer or gps out the box and fly's more stable than anything i have seen yet. As i look at the math of this thing it looks like a rather simple C# project (although i don't know how limited the math libraries are in the MF). Regardless this is the plan. I'm going to start with a simple KK build, which is proven and simple, use their board. Then i am going to start building my own board with the same simple 3 gyro system with netduino and do simulations without flying and continually add components. If gc is the issue i think we can get around it by promotion to first class citizens and ugly use of pinned objects and always having them in memory, my previous projects were in real-time stock market analysis, handling 20millions messages/second, stabilization should be simple comparatively. if the latter nd me being new to .netMF and netduino i would hope that the event firing systems of this board were not inferior to what is out there now. let me know your thoughts. also Chris W from a marketability standpoint a project like this could help give this hardware a nice showcase. Brandon



#7633 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 04:23 AM in Netduino 2 (and Netduino 1)

corey, i will prolly try and start a little heavier than that and optimize as i go and if the quad requires it, not being silly mind you but will try to make it elegant to start and get tighter in high traffic areas.



#7581 NetDuino Quadrocopter

Posted by Brandon G on 13 January 2011 - 05:21 PM in Netduino 2 (and Netduino 1)

I didnt mean to start any kind of war here either but i must object to the radical inefficiencies that you are both speaking of, there's a difference between 20 million operations and processing 20 million operational messages a second on one thread updating a domain with 100 millions objects in memory. Granted GC is an issue, i am not claiming i am going to have 400 passengers on my quad but conversely i will guarantee any code i write will not fly to 90' until it runs out of batteries. Perhaps this is the disconnect between hardware programmers that are hardware first software second. I am going to admit i am a noob when it comes to the hardware side but i cant imagine it this inefficient. no program i have ever made is content with a 20 second lag because of gc, thats drag and drop college kids. These are teeny objects and GC should have no impact if you are cognizant day one (which i always am). I have worked in .NET since the beta, I have run billions of dollars through .NET at millisecond efficiency(i agree on the sleep statement btw, .NET timer classes are awful), i have beat other programs to the punch($) by being more efficient and agile, these include ones written in c and c++, by programmers that are not as aware of speed given their bias of their language. Back to quad, for me this is a fun project to do something neat and cool to get my mind off the constant shite of work, hopefully i can find a community that wants to embark on it as i do with my limited hardware skill or i will try and do so on my own, the former favourable, i would hope this community would want to do more with its framework than what i have seen in the showcases, .NET is a great language and has huge potential in this space if WE can make it better, managed code has a bad rap because of bad programmers the easy barrier to entry, those at the forefront can make it a feasible and quick alternative for practical applications if we work around/with the inherent disadvantages / advantages. In closing i will say that for me this netduino project is an opportunity to step out of just programming and see material physical results of my effort, which is a huge, I have always wanted to bridge the gap between the real world and the virtual and thats what i love most about this project. anyway brandon



#7632 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 04:18 AM in Netduino 2 (and Netduino 1)

Chris W, thanks, as i said i hopefully wont have to break the microsecond barrier in any way from the outset, if so i will prolly throw my quad against the wall in frustration, as for the release i understand and will try not to be a burden i know you guys are busy and need o focus on your core business



#7597 NetDuino Quadrocopter

Posted by Brandon G on 13 January 2011 - 08:43 PM in Netduino 2 (and Netduino 1)

Thanks for your reply Chris, That's the exact architecture i was thinking. A state machine that instantiated all the main objects at startup and then using a messaging pipeline with handlers for interacting with the state machine cqrs style, will make for easily debuggable code as well as rapid development and future feature building, ie gps, accelerometer, sonar, magnetometer, video, wifi, cellular communication, autonomous functions, load carrying etc. The initial setup is as follows motor: emax fc2822 1200kv esc: hobbyking ss 25/30 props: epp 8×4.5 cw/ccw sbec: hk turnigy 5A frame: quadframe.com battery: turnigy 3s3000 20C controller: kkmulticontroller 5.5 once up and running i will start with the netduino board and add: 3 HobbyCity HK401B gyros and try to get those to work with the netduino Will be ordering components soon and will keep you all appraised of my progress.



#7614 NetDuino Quadrocopter

Posted by Brandon G on 13 January 2011 - 10:55 PM in Netduino 2 (and Netduino 1)

thanks chris, i'll look at swapping them out. Yea im trying to start with the cheap basics and move my way up from there as i get more familiar (crash less) hopefully i can get it off the ground. The gyros/esc's ive mentioned, do you think i'll have any issues communicating with them on netduino



#7600 NetDuino Quadrocopter

Posted by Brandon G on 13 January 2011 - 08:52 PM in Netduino 2 (and Netduino 1)

also i should mention that i did get this build list from warthox, http://warthox.bplaced.net/?page_id=76 , whom has some of the craziest quad and tri copter videos i have seen yet on the web, which is what started me wanting to do this so badly



#7631 NetDuino Quadrocopter

Posted by Brandon G on 14 January 2011 - 04:02 AM in Netduino 2 (and Netduino 1)

I agree GC is always going to be an issue and that i am not running on a xeon processor, but if i can keep things simple and be cognizant of the types i use i think i can do this pretty simply without gc killing me. Have many people linked netduino's together to get more punch or isolate processes, there is a possibility i could chain them and use individual boards for individual operations with incredibly simple operations back to a duino that is the master controller. This is partially why i have decided upon the kk code, seriously, take a look, its scary simple and low throughput. if i get more complex i could distribute the processing a bit. Mark, Chris, in no way did i mean to question your abilities as programmers, my college drag and drop comments were against the attacks of the .net framework as a whole, not the netmf running on lil processors. I've done some walkthroughs on code on some of the netmf sites to get an idea of the hardware integration side and the code makes me shudder. Take my most humblest of apologies if i offended, was not my intent and i plan to be on this site for quite some time and learn from everyones experiences in order to get better on the hardware side. thanks again for all your input and i will post back as i go.



#8522 Quad.Net Quadrocopter for .NETMF

Posted by Brandon G on 27 January 2011 - 06:42 AM in Project Showcase

well we're dealing with some hardware issues but have just put in an rx scale to tone it down, basically a parabola on the stick control



#8598 Quad.Net Quadrocopter for .NETMF

Posted by Brandon G on 28 January 2011 - 04:06 AM in Project Showcase

lol, guess i responded too quickly, thank you for your suggestions




home    hardware    projects    downloads    community    where to buy    contact Copyright © 2016 Wilderness Labs Inc.  |  Legal   |   CC BY-SA
This webpage is licensed under a Creative Commons Attribution-ShareAlike License.