Sunday, October 26, 2008

 

Propose some basic requirements and target to the Wheel Robot

Name of the Robot is not decided yet. Long time ago, when Michael was not manager, the Robot was named as JMBot; but now, I have to think out another name for it. Wall S is the name from my girl friend to be something related with Wall E from Pixar Carton movie "Wall E".

here, let me propose some basic requirement for the Robot before the organic glass made "Body Frame" cutting.
Requirenment:
1. Debug port + status indication (including HW/SW Error indication, battery status indication, optional encoder data display and function key for different data display on the same LCD or 7bit LED)
2. PC-Robot program download utility. New application can be updated from PC through the cable very quickly.
3. two wheel self balancing
4. obstacle detection and escaping, because no Gyroscope available at a good price. Leverage te obstacle detection and escaping algorithm.
5. wheels are able to change from one case to another case

Excellent:
1. Robot could record the wheel speed, battery current/voltage and location information in the FLASH. PC host can process these data and draw the corresponding curves.
2. the wheel diameter is one of the parameter, if the Robot can balance once the diameter of the wheel is fixed.
3. ...
4. Robot control...

Target:

Saturday, October 18, 2008

 

Wheel Robot Project Going On

Wheel Robot Project Status -- Going On

Purchased some tools and materials from Taobao.com at very good price.

They are:

1. Woodworker Working Bench (112RMB)






















2. Curve Saw (Einhell 600E 100RMB)

3. Electric Drill (Einhell BSM650E 118RMB)



4. Organic Class Plane (native product, 55RMB for 500mm x 500mm, thickness 5mm)



5. Axes Connection (4mm-6mm, BF-4x6D14L22, 50RMB x2)
I am starting to execute the Robot Development. First step is to build up the wheels and motors.

Thursday, October 09, 2008

 

Reading "Inside SPICE" from Ron M Kielkowski

WW41: Reading "Inside SPICE" from Rom M Kielkowski
It is a classic handbook to explain the working methanism of SPICE engines, for example, HSPICE, RSPICE, IS-spice, PSPICE, they are almost based on the same one SPICE2.

Keep some notes about what I have captured from this book.

Some key words:
1. HSPICE Pole-zero analysis automatic optimization
2. nonlinear solution algorithm
3. Kirchhoff's voltage and current laws
4. Newton-Raphson algorithm
Also known as Newton-Raphson methodis perhaps the best known method for finding successively better approximations to the zeros (or roots) of a real-valued function. Newton's method can often converge remarkably quickly, especially if the iteration begins "sufficiently near" the desired root.
5. transcendental equationtranscendental equations are often solved with an iterative guessing technique.
6. Non-linear deviceinitial guess
In SPICE, the AC frequency sweep is defined as a small-signal linear analysis. This means that during the AC frequency sweep, distortion, clipping, saturation, and other nonlinear effects are ignored after the bias point has been established.
7. General Newton-Raphson Convergence Aids parameters
>>accuracy error tolerances (RELTOL, VNTOL and ABSTOL)
>>set the minimum conductance GMIN
>>set the series resistance parameters of the semiconductor models
8. voltage convergence and current convergence
9. User-Selectable Numeric Integration V.S. Algorithm (what I always call them)
>>trapezoidal
>>backward-Euler
>>Gear
A variety of integration methods are provided in SPICE simply because no one integration method is always the best for all transient simulations.
Unlike nonconvergence failures, SPICE will not generate a warning message when the numeric integration method is producing inaccurate results.

Monday, October 06, 2008

 

the non-convergence issue of HSPICE

Came in this issue weeks ago when I am trying to simulate for SATA II interface for one project.
I was suspecting it was due to the short W transmission line calculation issue of Synopsys HSPICE.
Post some information from other websites to collect more information.


[quote from http://hi.baidu.com/meterfalls/blog/item/371c7a1951820079dab4bd88.html]
Hspice仿真电路不收敛,说白了就是就是计算机解矩阵解不出来了。
不收敛的原因可能有三个方面造成
(1).hspice的计算上面.以上换算法,换options都是根据这一点来的。一般说来,这样的情况占绝大多数
(2).Model的问题。比如产生负的电导,或者模型不连续性造成。
(3).电路本身问题
比如网表不完整,有悬空点;反馈不正确(不一定都不收敛,hspice的parser 部分对这种情况只给warning,不给error message)等等。电路本身的问题属于设计上的了,具体只能自己分析。对于hspice运行通过,功能性能都过的去,一般多运行些corner 情况, worstcase情况或者做 MonteCaro分析,有问题的话应该可以抓出,没问题的话,流片后出问题概率也不大
解决的办法可以通过以下各种手段.
(1).换个算法
hspice提供两种基本算法,Gear和Trap.学过数值分析的应该明白这两种解方程的方法。默认值是Trap,遇到不收敛问题一般先换个算法看看,更改为Gear.方法是加一个:
.options method="gear"
不过这个换算法能解决的情况不是很多。假如画出解方程的那个图形来看,是需要恰好避开那个不收敛的点才能解决。因此有一定凑巧性。
(2.)改变tolerance.
计算机解方程时,都是设定一个容忍度。这个容忍度可以是叠代次数,可以是精确度,可以是计算时间,而且还可能和accuracy配合起来,有大概20个tolerance可以更改。根据不同的需要,看一下需要改哪个。hspice有个附带的options table,非常好用。
(3).改变步长
相信大家看到的最多的是intenal timestep too small这个提示。内部时钟间隔太小。这个timestep不是所设定的分析step,不过那个step也是timestep的一个因子.影响timestep的因此很多,有12个之多。(比如数值变换平缓时,timestep自动取的大些以增快仿真时间)更改timestep的方法也可以查上述options列表.
(4).改变初始条件
用.ic设定。方程解不出来,就改变一下条件。使用得当一般不会影响结果.
(5).在一些节点加很大的电阻(不影响电路性能),来改变节点方程。这种方法不会影响电路的模拟结果。
(6).在.option 语句中加入改善收敛的语句。比如对收敛精度降低迭代次数加大等。其中的参数有RELVDC,RELH,CONVERGE,DCON等。
在hSPICE的手册里有很多改善的措施,可以看DC or AC中CONVERGENCE那部分。HSPICE在模拟的速度,精度,收敛性三方面进行折衷。
其中常用的是: 对每个节点都加一个很大的电阻或电容。
.OPTION GSHUNT=1E-11 CSHUNT=1E-11
等。 但这会降低模拟精度。
(7). 改变电源的波形。在电路起动时让恒流源缓慢上升。在HSPICE中也有这样的OPTION,不过你可以自己来改。在不影响电路的情况下这种方法对收敛的改善最好。
(8).改变电路
去掉或者替换一些没什么用的部分。可以加个非常小的电阻比如1u欧姆(等于加了个节点,方程维数多了一个)。

This page is powered by Blogger. Isn't yours?

Subscribe to Posts [Atom]