6. January 2010 21:43 by Brian in Projects - Comments: (0)
I have updated the site gallery with a flickr feed of my latest updates to Flickr
http://www.briandorey.com/gallery/gallery.aspx
2. January 2010 15:30 by Brian in Photography | Projects - Comments: (0)
These were taken using the full Bowens studio kit to light the item using softboxes and light the background with separate lights to give a more even light over the items.
Below are some new samples of what we can do with the rotary table we built for 360 degree stock photography
More...
30. December 2009 23:19 by Brian in Projects | Photography - Comments: (0)
After looking at various ways to show stock items in a better format for our ecommerce sites we thought it would be good to have 360 rotating images of the items.
Commercial systems to do this cost thousands and as we already have a Manfrotto 300N Panoramic Head for my tripod we decided to use this to make a round table top to use on the panoramic head.

More...
20. December 2009 17:00 by Brian in Projects - Comments: (0)
On the recently redesigned Virtual Swanage website we thought it would be useful to have a Twitter feed with daily events being submitted once a day from the websites event diary.
We considered manually updating the site every day and adding the current events to twitter but felt this would be a bit repetative!
The Atlas CMS system we have developed already has Twitter intergration using Twitterizer.Framework (http://code.google.com/p/twitterizer/) which is a .NET Twitter interface which is very easy to use.
More...
21. November 2009 21:47 by Brian in Projects - Comments: (0)
DIY CNC Mill Controller for Stepper Motor Milling Machine
This addon to our CNC mill was made to allow manual control of the mills cnc stepper motors using a pair of 2 axis joysticks obtained from a broken radio control plane radio transmitter.
The circuit uses a 12 series PIC processor to sample the joystick position and determine a center point. This then sends one output to the mills motor controller for the direction which switches between 0V and 5V via a optical isolator and the second output from the PIC Processor gives a voltage which corresponds to the joysticks position between 0-5V which goes into a voltage to frequency chip which sends a pulsed output to the mills motor controller for the speed. This is also isolated using a a optical isolator to protect this new circuit when the PC is controlling the mill.
The finished hand controller with the 2 joysticks which came from a old RC plane controller.

More...
26. October 2009 11:41 by Brian in Projects | Photography - Comments: (0)
DIY Camera Laser Break Beam Trigger MK 2
A DIY optical camera flash or camera trigger using a laser and PIC Processor based timer circuit.
Following from the basic high speed photography trigger we made, we found that it was difficult to be precise with the timing using the simple 556 timer based circuit.
We decided to try to make a new version using a PIC Processor and LCD display to display the timing settings.
The program was written in C and uses the ADC on the PIC as the input to take data direct from a photodiode and the processor deals with all the timing and delays before sending a pulse to a optical isolator to trigger a camera or flash unit.
The prototype build on a breadboard to allow easy development of the code.

More...
18. October 2009 21:03 by Brian in Projects | Photography - Comments: (0)
A DIY optical camera flash or camera trigger using a laser and basic timer circuit.
I have always enjoyed trying to take water drop photos but getting the flash and camera to trigger at the right moment by hand was always very difficult.
After researching commercial (very expensive) and various DIY triggers which activate via a light beam, infrared or sound, I decided to try to make a trigger which would fire a remote flash using a red laser as the light source.
I found a lot of very useful info on www.instructables.com/id/Laser-Triggered-High-Speed-Photography/ regarding timer circuits an I was able to adapt and add modify a circuit posted on the website to use an optical isolator to trigger my external flash unit.
Parts List:
- Stripboard
- 1 x Photodiode
- 1 x Red Laser module 5V (this came from a gun sight but the laser from a laser pen should be ok)
- 1 x 556 timer chip
- 1 x High Voltage optical isolator
- 2 x 1M 22 turn variable resistor
- 2 x 1K 1/4 watt resistor
- 1 x 22K 1.4 watt resistor
- 2 x 120R 1.4 watt resistor
- 3 x 1uF 35V Electrolytic Cap
- 1 x 10uF 35V Electrolytic Cap
- 4 x 100n Ceramic Cap
The prototype circuit board

More...
31. August 2009 13:53 by Brian in Projects - Comments: (0)

On a new website for Add Image (http://www.addimage.net/) we added a stock gallery which uses the Atom feeds from www.iStockPhoto.com which allow a user to use a data feed of their 10 latest images.
The datafeed is in Atom format. Using Microsoft Linq and C# I wrote the following code which grabs the users latest images and displays them on a web page complete with links back to each image to purchase.
You need to change the ID which is set to 275125 in this demo to be your own iStockPhoto user ID.
<%@ Page Language="C#" ContentType="text/html" ResponseEncoding="utf-8" Debug="false"%>
<%@ Import Namespace="System.Xml" %>
<%@ Import Namespace="System.Linq" %>
<%@ Import Namespace="System.Xml.Linq" %>
<script runat="server">
protected void Page_Load(Object Src, EventArgs E)
{
XmlReaderSettings settings = new XmlReaderSettings();
XmlUrlResolver resolver = new XmlUrlResolver();
XmlReader reader = XmlReader.Create("http://www.istockphoto.com/istock_myfiles_rss.php?ID=275125", settings);
XNamespace ns = XNamespace.Get("http://purl.org/atom/ns#");
XDocument feed = XDocument.Load(reader);
var items = from item in feed.Descendants(ns + "entry")
select new {Title = item.Element(ns + "title").Value, Link = item.Element(ns + "link").Attribute("href").Value, Summary = (string)item.Element(ns + "content")} ;
Repeater1.DataSource = items;
Repeater1.DataBind();
}
public string makeimagelink(string inval) {
return inval.Replace("http://www.istockphoto.com/file_closeup.php?id=","").Replace("&refnum=275125&source=rssuserimages","");
}
</script>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
.photobox { height: 140px; padding: 0px; margin: 10px 0px 50px 0px; width:20%; float: left; text-align:center; background:#FFFFFF; }
.photobox a { text-decoration:none; }
.imagebox{ height:120px; margin-top:5px;}
</style>
</head>
<body>
<asp:Repeater id="Repeater1" runat="server" >
<ItemTemplate>
<div class="photobox">
<a href="<%# DataBinder.Eval(Container.DataItem, "Link") %>" target="_blank">
<div class="imagebox"><img src="http://www.istockphoto.com/file_thumbview_approve/<%# makeimagelink(DataBinder.Eval(Container.DataItem, "Link").ToString()) %>/istockphoto.jpg" border="0" style="margin-bottom: 10px;"/></div>
<%# DataBinder.Eval(Container.DataItem, "Title") %></a></div>
</ItemTemplate>
</asp:Repeater>
</body>
</html>