ours looks like). Anyway, you'll probably want to start with a Fader 1-way. I set mine up to go from 0 to 300 over the course of 6 seconds. Then I just wrote a very quick C# component to check the output of the Fader component and whether it met one of three conditions. Here's the code (very simple). Note: you'll need to use the input manager to remove one of the Y input and the output manager to add 2 more outputs (B & C).
if (x <= 100) { A = true; B = false; C = false; } if (x > 100 && x <= 200) { A = false; B = true; C = false; } if (x > 200) { A = false; B = false; C = true; }
Now, we know if at any given Fader value if it's in the first phase, second phase, or third phase. I output a boolean value which can also be considered a 0 or 1 if converted to an integer. So, if I multiply those boolean values by 255, then the one that is true will be 255, and the others will always be 0. Now, you should have your color scheme which switches depending on what phase its in. Simply connect that to the Uno Write component (with the Firefly Firmata sketch loaded on your board) and send the color values to the board as PWM values.
Some things I should note... You probably notice the Fader component looks a little different (it's missing the start input and I'm using the GH_Timer). I've decided (for good reason) to abandon the Form Timer I was using in a lot of the Firefly components in favor of the newly re-written GH_Timer component. So, in order to get the Fader component to update in the next version, you have to connect a Timer and turn it on (not that much different). But, it's significantly faster. Part of the reason is that the form timer just wasn't fast enough to get really smooth results... Now, it's blazing fast. I've incorporated this Timer scheme in a lot of the Firefly components and the results are roughly 10x faster. Since, you're only switching values (and not trying to quickly modulate the PWM values) the current version of Firefly should be just fine (just use the Start input to start the Fader component). But, when we release the next version (hopefully very soon), this may change a bit. Anyway, I hope that clarifies it a bit. I've attached a screenshot below. I didn't include the file because I've got a newer version of Firefly that would just crash on you (or not open properly)... but hopefully you can get how to do it.
…
you working on a PV system which will power a domestic hot water boiler?
To answer your questions:1) Each grasshopper component (ghpython being one of those too) is using grasshopper's data matching algorithm. This algorithm takes care of complex issues which may arise from combining lists with single items, data trees with different number of items per branch and so on.I think there is a way of introducing a call to other processor's threads per each inputted surface, but this will be a very difficult job, as it will require writing a custom data matching algorithm. I do not think I am up to that task.Instead I tried to introduce the multithread only to the final part of the PVsurface component and one of its time consuming parts: calculation of sun angles, solar radiation and ac/dc power output.I attached the test file below, but sadly it didn't go well: the multithreaded version mostly runs at the same time as the regular version.I do not think I am qualified enough to answer why is that so, but I think that it may have something to do with the type of the function that the multithreading is applied to: the code is suppose to run few separate functions a couple of thousand times, and work with a couple of lists. From my experience, the multithreading works the best when a single list or two are supplied to a single function. I may be wrong on this.I am very sorry to say that I can not implement this feature.2) I am not familiar if open source PV modules database has been released.But one can always download the data for specific modules from producers websites. It can then easily be transferred to a .csv file or other text file.Ladybug Photovoltaics are based on NREL's PVWatts model.In comparison with other commercial software applications, PVWatts offers a more generalized system model, with some of the values and characteristics being assumed or embedded.The Fuentes empirical thermal model we are currently using follows the same logic: it generalizes the Module characteristics. The following characteristics are only editable: module efficiency, temperature coefficient and module mount type.It may be possible to replace Fuentes with some other, less generalized 5 parameter thermal model. But as an architect, I would definitively need help on this.
Sorry if my reply did not fulfill your expectations, and thank you for the kind words!…
vate Sub RunScript(ByVal x As Object, ByVal y As Object, ByVal z As Object, ByRef A As Object, ByRef B As Object)
Dim c_list As New list(Of nurbscurve)
Dim P_list As New list(Of Point3d)
For i As int32 = 0 To z
Dim c As New Ellipse(plane.WorldXY, i / 2, i)
Dim g As New NurbsCurve(c.ToNurbsCurve)
g.rotate(y * i, New vector3d(0, 1, 0), New point3d(x, 0, 0))
c_list.add(g)
Dim e As New BoundingBox
e = g.getboundingbox(False)
p_list.add(e.Center)
Next
Dim polyline As New polyline(p_list)
a = c_list
b = polyline
End Sub
To do the same thing is more easy in the old version
because i can't get the center of an ellipse directly
how can i do ???
thanks
ceason
…
ry grateful.
Well, i get some explanation of my problems:
First of all, i was working on making an double helix building, thing that i've solved making a sketch of lofting an transformating helix., but now i want to make some transformations to the helix, to make it less boring.
I want to transform the helix making somethin like that, making displacements on the helix to let the sun get in the building.
Well i've tried the ways that i know, but i'don't know if it's a better way or simply way of doing it.
i've attached my working files where i explain where i've get stuck
I've tried by this ways:
1) selecting the part of the helix wich i've want to transform.
This selection that i've made i think that was rought, i think that the best way to select the part that i've want to move is by the turns, but i've get lost in this way.
When i've get this points and i move it, if i divide the original helix in a few points it seems to work, but the result appears to be an helix but it isn't because i've made interpolation with few points.
If i divide in lots of points, when i make the "transformation" it isn't what i've expected, i think that i have to move this points in a gradiend move, to get a nice deformed helix.
This way is on the 1.ghx
2) The second way that i've tried is with map to surface, and morph box, but here i don't get the transformation thay i've want, or i don't know if i'm doing something wrong.
This way is on the test1.ghx
In the rhino file attached there is a "transformed helix" that i've want to obtain in GH, made by rhino, it's the blue one. It is the result that i've want to get,the displacement in xy plane, and after that transformation continue the helix.
1.ghx
test1.ghx
test1.3dm
Thanks for your attention.
…
hole. Currently I control it through PREVIEW, in component Solid Geometry or Solid DiferencedIn practice, the procedure of generating this whole is not needed, if the number of wholes = 0, or Yes/No (appeared or no) Question: How to use Boolean Toggle (optionaly):
1 to control the component PREVIEW state (On/Off)2 better for me- to start or stop the procedure to create whole (whole = 0,false - no whole needed)Hope you will hlep.
regardsSlawek…
s been great ! I found alot on info on this topic which got to experiment many different possible solutions. Unfortunately none of which resulted with me.
This a two part related question.
I want to do is resolve the paneling of two surfaces to be later populated with a component through the blend morphed box command. The surface shown on the image is the ' problematic surface '. An image of the isotrimmed surface and the loft curves used to generate that same surface.
1) İs it possible to ' remap / reset / regularize ' ' the UV grid of a surface independently of how it got constructed ? ( In this particular situation the lofting of the curves is creating an uneven UV grid. You can see their are kind of skewing to meet those smaller edges on the corner.
2) Finally, a step after that, visable in the last image shows a the blend box applied to these surfaces in which I used ' U-V SMART SBDIVIDER ' ( Closest result I could get to regularizing the UV grid ) . As you can see, the quads do not seem to be aligned. I have used some scripts I found on this forum to alternate between different directions and change the UV direction, but no direction seemed to align the faces to give clean twisted boxes.
FYI ( second surface not visable above is a simple patch of the edges of the first surface. )
Thanks alot for any help on this and for all the help I've gotten so far from existing discussions... Cheers!
FR…
getting answers for on the web.
Our goal is to install a scientific research lab in a forest to study the proliferation of a deadly tree disease so we would like to design a sort of big cocoon that is in part randomly generated and that would wrap around the trees inside it similar to how the disease proliferates through the forest... Unfortunately, we are having a few problems modeling it on grasshopper, here are our questions :
First off we have generated a grid on which we have attached vertical lines that represent the trees of the forest we are working on, we have also modeled a grid that is the dual to the first one (links the centers of the cells of the first grid together to form another grid). We have generated points of random z coordinates that follow the x and y coordinates of the second grid, and we have applied metaballs to those random points.
1. We would like to know how to create a surface from the curves generated by the metaballs in my grasshopper file ?
2. We would like to know if it is possible to push the surface away from the lines on the grid, as if there was a magnetic field pushing matter away from them ? we are hoping it would look a bit like this (the black lines being the trees and the big grey volume the surface wrapping around the trees, avoiding them) :
If you have any ideas of a better way of representing what we want to model please let me know (or if it isn't well explained please call me out on that). What we like about our grasshopper file for now is that you can kind of change the sizes of the metaballs pretty easily, the fact that they are randomly generated and smoothly blend together, but if you know a better way of achieving a similar result please let us know!
A few pics of what it looks like as of now :
Here is our grasshopper file attached, to generate the metaballs you just have to make a point in the center of the very first cell of the larger grid, so the corner of the second grid, and link it to the point in the grasshopper file.
Thanks, Sarah, Vincent and Nicholas…
mental studies and make it possible to run the analyses faster and more accurately.
Thanks to RADIANCE’s gendaymtx (and the awesomeness of Greg Ward, Ian Ashdown, and the help of Rob Guglielmetti) Ladybug is now using a brand new sky model which makes hourly and real time radiation analysis possible (Watch this video). SunPath is now improved and there are quite a few new components that work with SunPath including shadow mask, ray-tracing (short video), and view from sun (short video).
There are two new components for shading design and shadow studies that are not fully functional but are good enough to be released as a test version (This video shows the shadow study component).
I’m the most excited to introduce and welcome Chris Mackey as the new co-developer of the ‘bug who has developed the Humidity Ratio calculator for Ladybug which you can find under weather data analysis tab. People working with HVAC system design and thermal comfort may find it particularly useful and you can consider this component an initial step towards a Psychrometric chart for Ladybug.
There have also been a few enhancements to the analysis components. The parallel input is working properly now and the analyses are run much faster (here is the proof!). The orientation study is also modified so the legends are normalized and will stay at the same size and in the same location. And there’s much more to be explored when you install the components!
So far I couldn’t find a fast and accurate way to calculate the Vertical Sky Factor but both the viewRose (short video) and the shadow mask components calculate the values of VSF in 2d and 3d which can be used for your studies. I believe there should be a faster way to calculate the VSF based on view analysis.
You can download the new version from the same link and give it a try. I also updated the source code on GitHub and prepared some new examples to get you started. Don’t forget to update your GHPython to the latest release (Thanks Giulio) before updating the Ladybug.
Thanks again for all the support, great suggestions and the kind comments. Please keep the suggestions coming and stay critical to the ‘bug and the results of your studies.
Best,
Mostapha…
ion of both Ladybug and Honeybee. Notable among the new components are 51 new Honeybee components for setting up and running energy simulations and 15 new Ladybug components for running detailed comfort analyses. We are also happy to announce the start of comprehensive tutorial series on how to use the components and the first one on getting started with Ladybug can be found here:
https://www.youtube.com/playlist?list=PLruLh1AdY-Sj_XGz3kzHUoWmpWDXNep1O
A second one on how to use the new Ladybug comfort components can be found here:
https://www.youtube.com/playlist?list=PLruLh1AdY-Sho45_D4BV1HKcIz7oVmZ8v
Here is a short list highlighting some of the capabilities of this current Honeybee release:
1) Run EnergyPlus and OpenStudio Simulations - A couple of components to export your HBZones into IDF or OSM files and run energy simulations right from the grasshopper window! Also included are several components for adjusting the parameters of the simulations and requesting a wide range of possible outputs.
2) Assign EnergyPlus Constructions - A set of components that allow you to assign constructions from the OpenStudio library to your Honeybee objects. This also includes components for searching through the OpenStudio construction/material library and components to create your own constructions and materials.
3) Assign EnergyPlus Schedules and Loads - A set of components for assigning schedules and Loads from the Openstudio library to your Honeybee zones. This includes the ability to auto-assign these based on your program or to tweak individual values. You can even create your own schedules from a stream of 8760 values with the new “Create CSV Schedule” component. Lastly, there is a component for converting any E+ schedule to 8760 values, which you can then visualize with the standard Ladybug components
4) Assign HVAC Systems - A set of components for assigning some basic ASHRAE HVAC systems that can be run with the Export to OpenStudio component. You can even adjust the parameters of these systems right in Grasshopper.
Note: The ASHRAE systems are only available for OpenStudio and can’t be used with Honeybee’s EnergyPlus component. Also, only ideal air, VAV and PTHP systems are currently available but more will be on their way soon!
5) Import And Visualize EnergyPlus Results - A set of components to import numerical EnergyPlus simulation results back into grasshopper such that they can be visualized with any of the standard Ladybug components (ie. the 3D chart or Psychrometric chart). Importers are made for zone-level results as well as surface results and surfaces results can be easily separated based on surface type. This also means that E+ results can be analyzed with the new Ladybug comfort calculator components and used in shade or natural ventilation studies. Lastly, there are a set of components for coloring zone/surface geometry with EnergyPlus results and for coloring the shades around zones with shade desirability.
6) Increased Radiance and Daysim Capabilities - Several updates have also been made to the existing Radiance and Daysim components including parallel Radiance Image-based analysis.
7) Visualize HBObject Attributes - A few components have been added to assist with setting up honeybee objects and ensuing the the correct properties have been assigned. These include components to separate surfaces based on boundary condition and components to label surfaces and zones with virtually any of their EnergyPlus or Radiance attributes.
8) WIP Grizzly Bear gbxml Exporter - Lastly, the release includes an WIP version of the Grizzly Bear gbXML exporter, which will continue to be developed over the next few months.
And here’s a list of the new Ladybug capabilities:
1) Comfort Models - Three comfort models that have been translated to python for your use in GH: PMV, Adaptive, and Outdoor (UTCI). Each of these models has a “Comfort Calculator” component for which you can input parameters like temperature and wind speed to get out comfort metrics. These can be used in conjunction with EPW data or EnergyPlus results to calculate comfort for every hour of the year.
2) Ladybug Psychrometric Chart - A new interactive psychrometric chart that was made possible thanks to the releasing of the Berkely Center for the Built Environment Comfort Tool Code (https://github.com/CenterForTheBuiltEnvironment/comfort-tool). The new psychrometric chart allows you to move the comfort polygon around based on PMV comfort metrics, plot EPW or EnergyPlus results on the psych chart, and see how many hours are made comfortable in each case. The component also allows you to plot polygons representing passive building strategies (like internal heat gain or evaporative cooling), which will adjust dynamically with the comfort polygon and are based on the strategies included in Climate Consultant.
3) Solar Adjusted MRT and Outdoor Shade Evaluator - A component has been added to allow you to account for shortwave solar radiation in comfort studies by adjusting Mean Radiant Temperature. This adjusted MRT can then be factored into outdoor comfort studies and used with an new Ladybug Comfort Shade Benefit Evaluator to design outdoor shades and awnings.
4) Wind Speed - Two new components for visualizing wind profile curves and calculating wind speed at particular heights. These allow users to translate EPW wind speed from the meteorological station to the terrain type and height above ground for their site. They will also help inform the CFD simulations that will be coming in later releases.
5) Sky Color Visualizer - A component has been added that allows you to visualize a clear sky for any hour of the year in order to get a sense of the sky qualities and understand light conditions in periods before or after sunset.
Ready to Start?
Here is what you will need to do:
Download Honeybee and Ladybug from the same link here. Make sure that you remove any old version of Ladybug and Honeybee if you have one, as mentioned on the Ladybug group page.
You will also need to install RADIANCE, DAYSIM and ENERGYPLUS on your system. We already sent a video about how to get RADIANCE and Daysim installed (link). You can download EnergyPlus 8.1 for Windows from the DOE website (http://apps1.eere.energy.gov/buildings/energyplus/?utm_source=EnergyPlus&utm_medium=redirect&utm_campaign=EnergyPlus%2Bredirect%2B1).
“EnergyPlus is a whole building energy simulation program that engineers, architects, and researchers use to model energy and water use in buildings.”
“OpenStudio is a cross-platform (Windows, Mac, and Linux) collection of software tools to support whole building energy modeling using EnergyPlus and advanced daylight analysis using Radiance.”
Make sure that you install ENERGYPLUS in a folder with no spaces in the file path (e.g. “C:\Program Files” has a space between “Program” and “Files”). A good option for each is C:\EnergyPlusV8-1-0, which is usually the default locations when you run the downloaded installer.
New Example Files!
We have put together a large number of new updated example files and you should use these to get yourself started. You can download them from the link on the group page.
New Developers:
Since the last release, we have had several new members join the Ladybug + Honeybee developer team:
Chien Si Harriman - Chien Si has contributed a large amount of code and new components in the OpenStudio workflow including components to add ASHRAE HVAC systems into your energy models and adjust their parameters. He is also the author of the Grizzly Bear gbxml exporter and will be continuing work on this in the following months.
Trygve Wastvedt - Trygve has contributed a core set of functions that were used to make the new Ladybug Colored Sky Visualizer and have also helped sync the Ladybug Sunpath to give sun positions for the current year of 2014
Abraham Yezioro - Abraham has contributed an awesome new bioclimatic chart for comfort analyses, which, despite its presence in the WIP tab, is nearly complete!
Djordje Spasic - Djordje has contributed a number of core functions that were used to make the new Ladybug Wind Speed Calculator and Wind Profile Visualizer components and will be assisting with workflows to process CFD results in the future. He also has some more outdoor comfort metrics in the works.
Andrew Heumann - Andrew contributed an endlessly useful list item selector, which can adjust based on the input list, and has multiple applications throughout Ladybug and Honeybee. One of the best is for selecting zone-level programs after selecting an overall building program.
Alex Jacobson - Alex also assisted with the coding of the wind speed components.
And, as always, a special thanks goes to all of our awesome users who tested the new components through their several iterations. Special thanks goes to Daniel, Michal, Francisco, and Agus for their continuous support. Thanks again for all the support, great suggestions and comments. We really cannot thank you enough.
Enjoy!,
Ladybug + Honeybee Development Team
PS: If you want to be updated about the news about Ladybug and Honeybee like Ladybug’s Facebook page (https://www.facebook.com/LadyBugforGrasshopper) or follow ladybug’s twitter account (@ladybug_tool).
…