-
New introduction video
04/15/2017 at 20:40 • 0 commentsI am proud to show you a brand new introduction video for BowlerStudio!
-
Seeking Input
02/03/2017 at 21:29 • 0 commentsI have a solid Alpha version that has been released for coming up on 6 months now. The feature list is more or less complete, and the major bugs are mostly worked out. I am looking for feedback from anyone that has been using BowlerStudio. What sort of things annoy you? What things do you expect to happen that don't? What sort of things happen despite you not expecting it? Are there any things you think it should actually do that it doesn't? Let me know in the comments here.
-
Free BowlerStudio class! (as a weekly google Hangout)
01/13/2017 at 16:10 • 0 commentsI am hoping to get a bunch of people up to speed with BowlerStudio so I am offering an introduction to BowlerStudio. This will be a set of classes where i will walk you through the process of building robots with BowlerStudio. I will be recording these sessions for anyone that comes later, but if you want to ask questions and get help you will need to attend the final class time. I have posted a when2meet to gather interest, and when a time is selected i will post back here.
http://when2meet.com/?5958587-1PWB2
As for prerequisites, this is *not* an introduction to programming class, so the ability to read and write object oriented (or functional) code is a must. I will be instructing using Groovy (Java) in most of the classes for the sake of consistency. I will briefly introduce using Python, Clojure and creating a custom Domain Specific Language. We will cover the scripting system, the git-as-filesystem architecture, the kinematics framework, the CAD engine, the physics engine, Arduino code and Bowler Protocol integration, offline headless deployment all while exploring the BowlerStudio Integrated Development Environment for full-stack robotics.
-
0.20.2 Rotations, cameras and deep copy, oh my!
12/31/2016 at 16:49 • 0 commentsOK! I just pushed a new release with a very important fix. The rotation library i was relying on (mine) was giving errors sometimes and causing a whole bunch of other bugs. Should have done this all along:
and while i was in there I made a few Ui navigation updates, namely when you click on stuff the camera smoothly pans to it, rahter than jumping all around. and when the mouse goes idle for 10 seconds, it begins to auto-spin around the object (video game UI trick). you cna disable that with a checkbox, btw. and a small issue i keep running into, when you make a copy of a creature it attempts to maintain the hyperlinked connection to the scripts, now the copy does a deep copy into a single repo with all the scripts. if the script calls a script, that stays as a hyperlink, but things like the walking script, since if i copy a robot i geta hyperlink to my esisting walking script and if i edit it i mess up another robot -
Big update in CAD engine!
12/29/2016 at 16:59 • 0 commentsI have added 3 components to the CAD engine, Text extrude with fonts, SVG loading and extrusion, and extrusion along a Bezier path.
In version 0.20.0+ you can use all of these new API's. I have also changed the name of the dependent library to JavaCad from JCSG to avoid looping dependency conflicts (long story, trying to work it out with the upstream developer).
I have also discovered exactly WHY the Curiosity rover and any other powered wheel thing doesn't work, there seems to be some issue in Jbullet HingeConstraint that causes angles of -180 or 180 to snap to 0 degrees instead of continuing to roll over. instantaneously, causing control loop governing them to go nuts. I am working on implementing the driving vehicle physics engine example for wheeled devices, but that will make molecularity a problem down the line :/ Passive wheels such as the cart do not seem to suffer from this, which is curious, or maybe they do and it doesn't matter because there is no control loop driving it out of control.
-
Animatronic head becomes its own project
10/10/2016 at 20:55 • 0 commentsI have decided that the animatronic head is sufficantly awesome that it deservers its own proect, not just an example script for BowlerStudio. https://hackaday.io/project/16193-open-animatronics
I ran a class this summer teaching robotics to a bunch of high school kids. They each built an animatronic head, and programmed it using the arduino. They had a blast and used the robot as a reason to learn to program and engage with engineering.
During the month of october i am hosting a free costume build day every sunday at my makerspace, Technocopia. A group of us are making wearable anamatronic heads and we are doing a "where the wild things are" group costume!
-
A full vitamins library
08/13/2016 at 01:03 • 0 commentsI have finally gone through an made cad generation scripts for all of the hardware defined in:
https://github.com/madhephaestus/Hardware-Dimensions
You can see an example of how to load real dimensioned hardware easily using the Vitamins API demonstrated here:
http://neuronrobotics.com/JavaCAD/Vitamins/
Coming soon is my first CNC machine designed in BowlerStudio...
-
Arduino in BowlerStudio: A whole new perspective on 'full stack'
08/01/2016 at 14:18 • 0 commentsBowlerStudio is a neat runtime for bootstrapping files out of git repos and quickly putting them to use. I have used this trick for CAD, for AI, and for kinematics control. Now i have finally added a new domain: Microcontroller code!. You can now push arduino firmwares as *part of your normal code flow* inside any bowler studio language. The trick is treading .ino files as a scripting language like any other, and then pushing it through the normal arduino command line interface.
I also ported over the DyIO firmware to arduino (fair warning it needs a Mega or Curie for the full IO controller code at the moment). I did get the standard bowler communication stack working on a standard arduino Uno, as well as extending it with arbitrary processing on the arduino called from a groovy script, loaded at runtime, and then called by the same script. Pretty trippy when you think about it...
I have added a few examples of this here: http://neuronrobotics.com/BowlerFullStack/C-Server/ These work in BowlerStudio 0.18.11 and up and need Arduino 1.5 or greater installed (all done by the ppa now, linux is the easy one)
-
Animatronics! I made a slide-bar parametric animatronics head
07/01/2016 at 16:04 • 0 commentsSo this is a neat way to use BowlerStudio. One of my biggest frustrations with downloading a laser cut design is having a different thickness material then they used, a different servo, different bolt and so on. I started with slide bars to control those so anyone could make this with whatever parts they had laying around. I then noticed that i could parameterize all the aesthetic choices too. You can change the snout length, the head diameter, the eye distance, even the size of the eyes independently. I may need to make a new project just for this.
Oh, and its just 990 lines of code in total to do all that!
https://twitter.com/pjlangloi/status/748692603521163264
and the source for anyone with BowlerStudio that wants to play with it themselves:
https://gist.github.com/e67b5f75f23c134af5d5054106e3ec40.git
-
New video of the 0.18.4 features
06/04/2016 at 02:06 • 0 commentsHere is a quick video i did as a walk through of some of the new features in BowlerStudio.